Форум программистов, компьютерный форум CyberForum.ru

Запутался в фрагментах и транзакциях с GoogleMaps? - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Настройка Dagger 2 http://www.cyberforum.ru/android-dev/thread1671926.html
Есть простая activity. import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Spinner; import android.widget.TextView; import java.util.List;
Android Как в адаптивном дизайне Android Studio сделать так, чтобы графические элементы (различные кнопки, поля ввода могли находится на одной линии? http://www.cyberforum.ru/android-dev/thread1671859.html
Android Обновление виджета в заданное время
Добрый день! Подскажите как можно заставить обновляться виджет не раз в сутки (с помощью updatePeriodMillis), а в заданное время, хочу что бы обновлялся в 0:00 ровно
Android При покупке ошибка "Не удалось купить этот продукт. (Код ошибки : IAB-DPTL)"
Пробую подключить покупки к своему приложению и столкнулся с вышеописанной ошибкой. Код использовал из официальной документации. IInAppBillingService mService; private String myPublicKey="oui4Wd2ZFy7WF5kIv6dTUA2JiRwpETqgqP5GHO0xAB+GEAzk/KS5H4cPD2YA5aA+"; Bundle buyIntentBundle = mService.getBuyIntent(3, getPackageName(), "coin3", "inapp", myPublicKey); PendingIntent pendingIntent =...
Android Получение значения checkBox http://www.cyberforum.ru/android-dev/thread1671696.html
Приветствую. Подскажите, плиз. У меня есть некий сервис. Так же есть активити с настройками программы. В этом активити есть чекбоксы. Как мне из сервиса получить информацию о состоянии этих чекбоксов?
Android Как поменять цвет нажатой кнопки в runtime? Надо для кнопки менять цвета в нажатом/ненажатом состоянии. Во время работы программы. Цвет бордюра тоже надо менять. Как это делать? подробнее

Показать сообщение отдельно
disx
18 / 18 / 0
Регистрация: 26.02.2014
Сообщений: 456

Запутался в фрагментах и транзакциях с GoogleMaps? - Android

27.02.2016, 17:59. Просмотров 324. Ответов 13
Метки (Все метки)

есть активити, в которой по кнопке меняются фрагменты (их пока всего два), один из этих фрагментов карта Гугл, когда по кнопке меняю на второй все ок но если опять первый щелкнуть то вылетает проблем и ругается на inflate :

Ошиба:
Кликните здесь для просмотра всего текста
XML
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
FATAL EXCEPTION: main
                                                                    Process: com.dis., PID: 12316
                                                                    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.dis./com.dis..MainActivity}: android.view.InflateException: Binary XML file line #8: Error inflating class fragment
                                                                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2358)
                                                                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2410)
                                                                        at android.app.ActivityThread.access$800(ActivityThread.java:155)
                                                                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1331)
                                                                        at android.os.Handler.dispatchMessage(Handler.java:110)
                                                                        at android.os.Looper.loop(Looper.java:193)
                                                                        at android.app.ActivityThread.main(ActivityThread.java:5395)
                                                                        at java.lang.reflect.Method.invokeNative(Native Method)
                                                                        at java.lang.reflect.Method.invoke(Method.java:515)
                                                                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:837)
                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:653)
                                                                        at dalvik.system.NativeStart.main(Native Method)
                                                                     Caused by: android.view.InflateException: Binary XML file line #8: Error inflating class fragment
                                                                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:713)
                                                                        at android.view.LayoutInflater.inflate(LayoutInflater.java:469)
                                                                        at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
                                                                        at com.dis..MapGoogle.onCreateView(MapGoogle.java:33)
                                                                        at android.app.Fragment.performCreateView(Fragment.java:1700)
                                                                        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:890)
                                                                        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1040)
                                                                        at android.app.Activity.onCreateView(Activity.java:4851)
                                                                        at android.support.v4.app.BaseFragmentActivityHoneycomb.onCreateView(BaseFragmentActivityHoneycomb.java:34)
                                                                        at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:79)
                                                                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689)
                                                                        at android.view.LayoutInflater.inflate(LayoutInflater.java:469)
                                                                        at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
                                                                        at com.dis..MapGoogle.onCreateView(MapGoogle.java:33)
                                                                        at android.app.Fragment.performCreateView(Fragment.java:1700)
                                                                        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:890)
                                                                        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1062)
                                                                        at android.app.BackStackRecord.run(BackStackRecord.java:698)
                                                                        at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1447)
                                                                        at android.app.Activity.performStart(Activity.java:5286)
                                                                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2331)
                                                                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2410)*
                                                                        at android.app.ActivityThread.access$800(ActivityThread.java:155)*
                                                                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1331)*
                                                                        at android.os.Handler.dispatchMessage(Handler.java:110)*
                                                                        at android.os.Looper.loop(Looper.java:193)*
                                                                        at android.app.ActivityThread.main(ActivityThread.java:5395)*
                                                                        at java.lang.reflect.Method.invokeNative(Native Method)*
                                                                        at java.lang.reflect.Method.invoke(Method.java:515)*
                                                                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:837)*
                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:653)*
                                                                        at dalvik.system.NativeStart.main(Native Method)*
                                                                     Caused by: java.lang.IllegalArgumentException: Binary XML file line #8: Duplicate id 0x7f0c0089, tag null, or parent id 0x7f0c006e with another fragment for com.google.android.gms.maps.MapFragment
                                                                        at android.app.Activity.onCreateView(Activity.java:4837)
                                                                        at android.support.v4.app.BaseFragmentActivityHoneycomb.onCreateView(BaseFragmentActivityHoneycomb.java:34)
                                                                        at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:79)
                                                                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689)
                                                                        at android.view.LayoutInflater.inflate(LayoutInflater.java:469)*
                                                                        at android.view.LayoutInflater.inflate(LayoutInflater.java:397)*
                                                                        at com.dis..MapGoogle.onCreateView(MapGoogle.java:33)*
                                                                        at android.app.Fragment.performCreateView(Fragment.java:1700)*
                                                                        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:890)*
                                                                        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1040)*
                                                                        at android.app.Activity.onCreateView(Activity.java:4851)*
                                                                        at android.support.v4.app.BaseFragmentActivityHoneycomb.onCreateView(BaseFragmentActivityHoneycomb.java:34)*
                                                                        at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:79)*
                                                                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689)*
                                                                        at android.view.LayoutInflater.inflate(LayoutInflater.java:469)*
                                                                        at android.view.LayoutInflater.inflate(LayoutInflater.java:397)*
                                                                        at com.dis..MapGoogle.onCreateView(MapGoogle.java:33)*
                                                                        at android.app.Fragment.performCreateView(Fragment.java:1700)*
                                                                        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:890)*
                                                                        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1062)*
                                                                        at android.app.BackStackRecord.run(BackStackRecord.java:698)*
                                                                        at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1447)*
                                                                        at android.app.Activity.performStart(Activity.java:5286)*
                                                                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2331)*
                                                                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2410)*
                                                                        at android.app.ActivityThread.access$800(ActivityThread.java:155)*
                                                                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1331)*
                                                                        at android.os.Handler.dispatchMessage(Handler.java:110)*
                                                                        at android.os.Looper.loop(Looper.java:193)*
                                                                        at android.app.ActivityThread.main(ActivityThread.java:5395)*
                                                                        at java.lang.reflect.Method.invokeNative(Native Method)*
                                                                        at java.lang.reflect.Method.invoke(Method.java:515)*
                                                                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:837)*
                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:653)*
                                                                        at dalvik.system.NativeStart.main(Native Method)*


Иксамэль:
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >
 
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/gmap"
    tools:context=".MapGoogle"
    android:name="com.google.android.gms.maps.MapFragment" />
 
    </LinearLayout>


Фрагмент MapGoogle:
Кликните здесь для просмотра всего текста
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
public class MapGoogle extends Fragment implements OnMapReadyCallback {
MainActivity ma;
    private Boolean isFabOpen = false;
    private GoogleMap mMap;
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.maps_google, container, false);
 
        MapFragment mapFragment = (MapFragment) getFragmentManager()
                .findFragmentById(R.id.gmap);
        mapFragment.getMapAsync(this);
 
        return view;
    }
 
 
    @Override
    public void onMapReady(GoogleMap googleMap) {
        googleMap.addMarker(new MarkerOptions()
                .position(new LatLng(0, 0))
                .title("Marker"));
    }
}


МэйнАктивити (где показываются эти фрагменты):
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
mapGoogle = new MapGoogle(); //фрагмент 1
        ChtotoEcshe = new ChtotoEcshe(); //фрагмент 2
        ft = getFragmentManager().beginTransaction();
 
        ft.setCustomAnimations(
                R.anim.card_flip_right_in, R.anim.card_flip_right_out,
                R.anim.card_flip_left_in, R.anim.card_flip_left_out);
//  ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
        ft.add(R.id.container_body, mapGoogle);
 
        //ft.replace(R.id.container_body, mapGoogle);
        ft.addToBackStack(null);
        ft.commit();
//.... далее их замена кнопкой
 
case R.id.button1:
                ft.replace(R.id.container_body, ChtotoEcshe); //все гуд меняется
//....
 case R.id.button2:
                ft.replace(R.id.container_body, mapGoogle); //происходит ошибка


ошибка ссылается на эту строку в MapGoogle -
Java
1
View view = inflater.inflate(R.layout.maps_google, container, false);
что не так может быть, подскажите пожалуйста?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 09:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru