android – FAB(浮动动作按钮)不浮动

前端之家收集整理的这篇文章主要介绍了android – FAB(浮动动作按钮)不浮动前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图使用floatingactionbutton元素,但它不会在UI布局中浮动,浮动按钮占据布局的一部分而不是在组件上,在我的情况下是一个viewpager,

button doesn’t float

这是我的布局:

<LinearLayout 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"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    tools:context="com.frases.frases.FraseMain"
    android:orientation="vertical">

    <android.support.v7.widget.Toolbar
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/appbar"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:minHeight="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light" >

    </android.support.v7.widget.Toolbar>

    <android.support.design.widget.TabLayout
        android:id="@+id/sliding_tabs"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:tabMode="fixed"/>

    <android.support.v4.view.ViewPager
        android:id="@+id/viewpager"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="@android:color/white" />

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:src="@android:drawable/ic_dialog_email" />


</LinearLayout>

解决方法

这是因为您使用LinearLayout作为根布局.您需要FrameLayout将元素堆叠在一起,并且FAB需要是最后一个子节点,因为它需要保持在每个其他视图之上.
<FrameLayout>
  <LinearLayout>
    ...
  </LinearLayout>

  <!-- FAB be the last node inside FrameLayout here -->
  <android.support.design.widget.FloatingActionButton />
</FrameLayout>

猜你在找的Android相关文章