FloatingActionButton, layout_anchor et layout_gravity
Un peu un newbie. Je suis environ deux mois dans le développement Android, mais j'ai des années d'expérience en développement dans d'autres environnements.
D'accord. J'ai un FloatingActionButton
qui ne montrait pas d'où j'ai attendu qu'elle ou il voulait. C'est à l'intérieur d'un CoordinatorLayout
, avec une AppBarLayout
/Toolbar
, et à la suite d'une ListView
.
Ici est la mise en page:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/fragment_coordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context=".ViewVehicleList">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:title="Vehicle List"
app:layout_scrollFlags="scroll|enterAlways|snap"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
</android.support.design.widget.AppBarLayout>
<ListView
android:id="@+id/Vehicle_ListView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:background="#FFFFFF"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
</ListView>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab_AddVehicle"
style="@style/FloatingAddButton"
android:src="@drawable/ic_green_add"
android:layout_gravity="bottom|end"
app:layout_anchor="@id/Vehicle_ListView"
android:onClick="addVehicle"/>
</android.support.design.widget.CoordinatorLayout>
Avec cette mise en page, l'écran ressemble à ceci:
Mon layout_gravity
dit "bottom|end"
. Je l'ai changé pour "bottom|right"
, mais encore j'ai obtenu le même résultat. J'ai lu beaucoup de tutoriels, et des recherches par le biais de Débordement de Pile, et n'ont eu aucune chance.
J'ai réussi à le résoudre en supprimant le point d'ancrage répertoriés dans le FAB élément app:layout_anchor="@id/Vehicle_ListView"
, qui semble fonctionner un compteur à ce que j'ai lu: l'utilisation d'un FAB et le positionner correctement, vous devez utiliser layout_anchor
et layout_gravity
. Sans la balise d'ancrage, il ressemble à ceci:
Alors voici ma question: Pourquoi est mon ancrage à visser en place le positionnement de mon FloatingActionButton
? Ce que je fais mal?
OriginalL'auteur C. Todd | 2016-05-25
Vous devez vous connecter pour publier un commentaire.
Vous avez juste besoin d'ajouter
layout_anchorGravity
.OriginalL'auteur Hussein El Feky