Форум программистов, компьютерный форум, киберфорум
Наши страницы

Задать программно свойства Fragment - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Создание изображения на лету http://www.cyberforum.ru/android-dev/thread1304152.html
Требуется на карте Google Maps размещать маркеры у которых в качестве иконок будут изображения с цифрами. Т.к. в таком случае иконки могут быть различные, хотелось бы не создавать на каждый вид...
Программирование Android Автоматическое запоминание позиции при выходе из приложения Здравствуйте. Разрабатываю приложение, в котором имеется текст с вертикальной прокруткой. Подскажите, пожалуйста, как реализовать автоматическое запоминание позиции при выходе из приложения?... http://www.cyberforum.ru/android-dev/thread1304121.html
Кнопки в Notification Программирование Android
Всем привет. Подскажите где подсмотреть решение. В уведомлении от своего сервиса хочу выводить 2 кнопки помимо текста, соответственно что-то на них вешать. Использую NotificationManager Спасибо...
Пин код в txt файл Программирование Android
Форумчане доброго времени суток))Извиняюсь тех кого я обидел или чем))У меня возник вопрос я пишу программу поле editText и кнопка)) мне нужно при нажатии сохранить в файл пин код и следующий раз...
Программирование Android Авторизация пользователей http://www.cyberforum.ru/android-dev/thread1303756.html
Требуется совет тех, кто уже сталкивался с таким вопросом. Делаю приложение-каталог. В нем пользователи будут комментировать и оценивать товар. Нужна какая-то уникальная идентификация пользователя,...
Программирование Android Совместимость с ART Я некоторое время пишу приложение на Android, и вчера попытался запустить его на Nexus 5 Android 5.0. При запуске выдаёт ошибку. На Android 4.4 с davlik работало исправно. На android 4.4 с ART не... подробнее

Показать сообщение отдельно
barbaris
0 / 0 / 0
Регистрация: 24.09.2014
Сообщений: 5
19.11.2014, 16:20  [ТС]
попытаюсь больше прояснить задачу... задача состоит в том что у нас есть приложение с такой структурой рисунок структуры
при первом переходе на фрагмент с картой, она загружается отлично, но когда возвращаемся на нее то выдает ошибку:

5051-5051/yourevents.yourevents E/AndroidRuntime﹕ FATAL EXCEPTION: main
android.view.InflateException: Binary XML file line #169: Error inflating class fragment

at yourevents.yourevents.EventFragment.onCreateView(EventFragment.java:72)
at android.app.Fragment.performCreateView(Fragment.java:1695)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:885)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1057)
at android.app.BackStackRecord.popFromBackStack(BackStackRecord.java:776)
at android.app.FragmentManagerImpl.popBackStackState(FragmentManager.java:1484)
at android.app.FragmentManagerImpl.popBackStackImmediate(FragmentManager.java:490)

Caused by: java.lang.IllegalArgumentException: Binary XML file line #169: Duplicate id 0x7f05006e, tag null, or parent id 0xffffffff with another fragment for com.google.android.gms.maps.MapFragment
at android.app.Activity.onCreateView(Activity.java:4740)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:680)


погуглив ету ошибку, узнав что ето происходит через то что происходит конфликт карт, то есть у нас уже есть карта, а при возврате назад создается еще одна и пытается налезть на первую...
Пишут что выход в том чтобы создавать динамически карту, и добавлять ее в контейнер.
вот собственно это я и пытаюсь сделать ... вот старый код
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public class EventFragment extends Fragment {
MapFragment mapFragment;
    GoogleMap map;
@Override
    public View onCreateView(LayoutInflater inflater, final ViewGroup container,
            Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        View view = inflater.inflate(R.layout.fragment_event, null);
 initMap();
}
  private void initMap() {
    if (map==null) {
 
            mapFragment =  (MapFragment ) getFragmentManager()
                    .findFragmentById(R.id.map);
            map = mapFragment.getMap();
 
                map.addMarker(new MarkerOptions()
                        .position(event.getPosition())
                        .title(event.getPlace()));
 
                map.setMapType(GoogleMap.MAP_TYPE_NORMAL);
                CameraPosition cameraPosition = new CameraPosition.Builder()
                        .target(event.getPosition())
                        .zoom(17)
                        .tilt(0)
                        .build();
                CameraUpdate cameraUpdate = CameraUpdateFactory.newCameraPosition(cameraPosition);
                map.animateCamera(cameraUpdate);
 
        }
вот код обработчика кнопки по которой переходим на следующий фрагмент, с которого при возврате мы получаем ошибку
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
   visitadEventButton.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                EventFragmentVisited efVisited = new EventFragmentVisited();
 
                 myFragmentManager = getFragmentManager();
                FragmentTransaction fragmentTransaction = myFragmentManager.beginTransaction();
                fragmentTransaction.remove(mapFragment);
                fragmentTransaction.replace(R.id.container, efVisited);
                fragmentTransaction.addToBackStack(null);
                fragmentTransaction.commit();
            }
        });
а так я пытаюсь решить ету проблему:
код контейнера
XML
1
2
3
4
5
6
7
8
9
10
11
       <LinearLayout
            android:id="@+id/conteiner_map"
 
            android:orientation="horizontal"
            android:layout_width="match_parent"
            android:layout_height="180dp"
            android:layout_column="0"
            android:layout_row="3"
            >
 
        </LinearLayout>
код создания программно фрагмента, и добавление его в контейнер
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
    @Override
    public View onCreateView(LayoutInflater inflater, final ViewGroup container,
            Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        View view = inflater.inflate(R.layout.fragment_event, null);
 
        Context context = getActivity().getApplicationContext();
        LinearLayout linearLayout = new LinearLayout(context);
        linearLayout = (LinearLayout) view.findViewById(R.id.conteiner_map);
        FrameLayout frameLayout = new FrameLayout(context);
        frameLayout.setId(R.id.id_map_fragment);
        linearLayout.addView(frameLayout);
}
подскажите, я хоть правильно пытаюсь решить проблему ?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.