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>