1

У меня <item name="android:windowTranslucentNavigation">true</item> в моем styles.xml.FloatingActionButton с закусочной и прозрачной навигационной панелью

Я даю поле плавающей кнопки действия из-за прозрачной навигационной панели.

У меня проблема, что моя закусочная ниже прозрачной панели навигации. Я исправил это, указав закусочную набивку, но теперь между моей закусочной и моей плавающей кнопкой действия стоит много места. Я попытался создать настраиваемое поведение для моей кнопки плавающего действия, но пользовательский запас для навигационной панели и отступы из закусочной вызвали неправильную высоту, когда закуска была уволена или показана.

Thats моей кнопки плавающих действий внутри android.support.design.widget.CoordinatorLayout, который имеет атрибут android:fitsSystemWindows="true"

<android.support.design.widget.FloatingActionButton 
     android:id="@+id/myFAB" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentRight="true" 
     android:layout_gravity="bottom|right|end" 
     android:layout_marginEnd="10dp" 
     android:layout_marginRight="10dp" 
     app:borderWidth="0dp" 
     app:elevation="12dp" 
     app:layout_behavior="...ScrollAwareFABBehavior" 
     app:rippleColor="@color/md_indigo_700" /> 

Я haven't нашел решение для выравнивания FloatingActionButton и SnackBar над NavigationBar, не разрушая behavior.

My CoordinatorLayout находится внутри фрагмента. А вот раскладка активность:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/content_frame" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" /> 

фрагмент макета:

<?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:wheel="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/main_content" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true"> 

    <include layout="@layout/fragment_toolbar" /> 

    <com.pnikosis.materialishprogress.ProgressWheel 
     android:id="@+id/progress_wheel" 
     android:layout_width="80dp" 
     android:layout_height="80dp" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:layout_gravity="center" 
     android:visibility="gone" 
     wheel:matProg_barColor="#5588FF" 
     wheel:matProg_progressIndeterminate="true" /> 

    <android.support.v7.widget.RecyclerView xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/recyclerView" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:clipToPadding="false" 
     android:paddingBottom="@dimen/navigation_bar_bottom_padding" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/myFAB" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentEnd="true" 
     android:layout_alignParentRight="true" 
     android:layout_gravity="bottom|right|end" 
     android:layout_marginEnd="10dp" 
     android:layout_marginRight="10dp" 
     app:borderWidth="0dp" 
     app:elevation="12dp" 
     app:layout_behavior="...ScrollAwareFABBehavior" 
     app:rippleColor="@color/md_indigo_700" /> 

</android.support.design.widget.CoordinatorLayout> 
+0

Вместо того, чтобы использовать отступы и все, попробуйте это, используйте пустой макет прямо над floatingActionButton, и в закусочной на макет, чтобы показать, указать этот пустой макет. – HourGlass

+0

@HourGlass snackbar всегда ищет следующую координацию в макете. Пустое поле не изменилось бы. – Fabian

+0

в порядке, можете ли вы разделить весь код макета. – HourGlass

ответ

0

Я думаю, что это будет делать. Проверьте это, и если он не работает, поделитесь своим кодом закуски.

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/myFAB" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    app:layout_anchorGravity="bottom|right|end" 
    android:layout_gravity="bottom|right" 
    app:borderWidth="0dp" 
    app:elevation="12dp" 
    app:layout_behavior="...ScrollAwareFABBehavior" 
    app:rippleColor="@color/md_indigo_700" /> 
Смежные вопросы