J'utilise ceci pour la mise en page de diapositives dans mon fragment de carte, mais mon application plante encore et encore et je ne comprends pas ce qui se passe. Dans le rapport de bogue, il suffit de dire Ligne de fichier XML binaire # 34 Ligne de fichier XML binaire # 34: "Erreur de gonflage du fragment de classe".
ceci est mon MapsActivity.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/root" android:layout_width="match_parent" android:layout_height="wrap_content" app:behavior_hideable="false" android:clickable="true" app:behavior_peekHeight="56dp" app:layout_behavior="@string/bottom_sheet_behavior" android:orientation="vertical"> <TextView android:id="@+id/tex1" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:text="EXPLORE " android:textSize="30sp" android:textStyle="bold" /> <Button android:id="@+id/b1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/tex1" android:layout_centerInParent="true" android:layout_marginTop="30dp" android:text="Your Place" /> <Button android:id="@+id/b2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/b1" android:layout_centerInParent="true" android:layout_marginTop="30dp" android:text="My Place" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/b2" android:layout_centerInParent="true" android:layout_marginTop="30dp" android:text="Many to find " /> </LinearLayout>
BottomData.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:app="http://schemas.android.com" xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="match_parent" android:layout_width="match_parent" android:orientation="vertical"> <com.sothree.slidinguppanel.SlidingUpPanelLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="bottom" app:umanoDragView="@+id/dragView" app:umanoOverlay="true" app:umanoPanelHeight="68dp" app:umanoParalaxOffset="100dp" app:umanoShadowHeight="4dp"> <android.support.v4.widget.DrawerLayout android:id="@+id/drawer" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="56dp" android:background="#FFFFFF"> <ImageView android:id="@+id/tree_button" android:layout_width="40dp" android:layout_height="40dp" android:adjustViewBounds="true" android:scaleType="fitXY" android:src="@drawable/tree" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:text="Ecology" android:textColor="@color/colorAccent" android:textSize="30dp" android:textStyle="bold" /> </android.support.v7.widget.Toolbar> <fragment android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MapsActivity"> </fragment> </LinearLayout> <android.support.design.widget.NavigationView android:id="@+id/navigation" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" app:menu="@menu/menu"> </android.support.design.widget.NavigationView> </android.support.v4.widget.DrawerLayout> <include layout="@layout/bottom_data"> </include> </com.sothree.slidinguppanel.SlidingUpPanelLayout> </RelativeLayout>
Merci d'avance!
3 Réponses :
Essayez ce code.
Le studio Android fournit également une activité sur la carte .. vous pouvez l'ajouter facilement.
ajoutez ci-dessous la dépendance dans le fichier gradle au niveau de l'application.
<?xml version="1.0" encoding="utf-8"?> <fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:map="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/map" tools:context=".MapsActivity" android:name="com.google.android.gms.maps.SupportMapFragment"/>
J'ai demandé quelque chose d'autre ... regardez dans mon MapsActivity.xml J'ai déjà implémenté le fragment de Maps dans mon projet Je veux juste implémenter SlideUpPanel dessus. :)
vous avez face à cette erreur Erreur de gonflement du fragment de classe .. cette solution consiste à ajouter cette dépendance dans le fichier gradle au niveau de l'application..implémentation 'com.google.android.gms: play-services-maps: 16.1.0'
Je pense que vous utilisez le curseur umano dans le mauvais sens.
com.sothree.slidinguppanel.SlidingUpPanelLayout
doit être l ' élément racine
de votre présentation d'activité
mise en page
doit avoir la gravité
définie sur haut
ou bas
(position à partir de laquelle le curseur va dessiner) mise en page principale
. Le deuxième enfant est votre mise en page
pour le panneau coulissant mise en page principale
doit avoir la largeur
et la hauteur
définies sur match_parent
.
La mise en page coulissante
doit avoir la largeur
définie sur match_parent
et la hauteur
définie sur match_parent code>, wrap_content
Ce serait un exemple:
implementation 'com.sothree.slidinguppanel:library:3.4.0'
Quoi qu'il en soit, vous devez ajouter ceci dans les fichiers gradle
//main_activity.xml or whatever layout u wish <com.sothree.slidinguppanel.SlidingUpPanelLayout xmlns:sothree="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="bottom" sothree:umanoPanelHeight="68dp">//Height when the slide panel is in the collapsed form //This is the base content, everything u want in the view has to be inside these <fragment android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment" tools:context=".MapsActivity" android:layout_width="match_parent" android:layout_height="match_parent"> </fragment> //This is the sliding layout, everything u want in the slider has to be here <LinearLayout android:id="@+id/slidingLayoutMapsFragment" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center|top" android:text="The Awesome Sliding Up Panel" android:textSize="16sp" /> </LinearLayout> </com.sothree.slidinguppanel.SlidingUpPanelLayout>
regardez ce code
<com.sothree.slidinguppanel.SlidingUpPanelLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:sothree="http://schemas.android.com/tools" android:gravity="bottom" sothree:umanoPanelHeight="68dp" sothree:umanoShadowHeight="4dp" sothree:setAnchorPoint="middle" > <!-- Main here --> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent"> <fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:map="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.eminent.a2019.mapslearnign.MapsActivity" /> </RelativeLayout> <!-- SlideUpPanelHere --> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > </LinearLayout> </com.sothree.slidinguppanel.SlidingUpPanelLayout>