Ich versuche, eine Floating Action Button aus der Android Design Support Library innerhalb eines Fragments zu bekommen, das sich in einem ViewPager befindet. Ich habe 4 Tabs und ich möchte die FAB nur in einem der Tabs. Mein Layout sind wie folgt:Android Design Support Bibliothek FAB in einem ViewPager Fragment mit Koordinator Layout
main_layout.xml
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
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"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_scrollFlags="scroll|enterAlways" />
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
app:tabIndicatorHeight="3dp"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
list_fragment_with_fab.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:padding="5dip"
android:background="@color/Transparent_White"
android:fitsSystemWindows="false"
android:layout_width="match_parent"
android:layout_height="match_parent">
<org.lucasr.twowayview.widget.TwoWayView
android:id="@+id/clip_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:twowayview_layoutManager="ListLayoutManager" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/add_list_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_margin="16dp"
android:src="@drawable/ic_list_add"
app:layout_anchor="@+id/clip_recycler_view"
app:layout_anchorGravity="bottom|right|end" />
Das Problem ist jetzt, die FAB funktioniert nicht gemäß den Designspezifikationen. Das Ausblenden und Anzeigen der Fab funktioniert nicht. Außerdem ist der FAB nicht an seinem ursprünglichen Ort, wenn das Fragment aktiviert ist. Ich habe unten Screenshots angehängt, um es klarer zu machen.
Die im linken Bild, wie Sie sehen können, ist der FAB aus dem Bildschirm. Wenn ich blättern gehe, wird die Toolbar ausgeblendet (denke Play Store App) und die Tabs bleiben, zu dieser Zeit wird der FAB nach oben scrollen.
Ist das ein Fehler in dem Design Support-Bibliothek? Oder ist mein Layout falsch? Außerdem möchte ich die FAB nur in einem der Fragmente, also fügt das Hinzufügen der main_layout.xml irgendwie diesen Zweck ein.
Sie Sichtbarkeit 'gone' in Ihrem Layout einstellen könnte, und Setze 'fab.setVisibility (View.VISIBLE)' 'in dein Fragment, um fab anzuzeigen – hornet2319