2017-06-05 5 views
0

下部のナビゲーションメニューの上部にFABを使用してレイアウトを作成しようとしていますが、メニューは常にボタンの上にとどまります。私は何を期待:(AHBottomNavigationは常にFloatingActionButtonの前にあります

マイlayout.xml

<?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:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/container" 
    tools:context="com.example.mytest.money.MainActivity"> 

    <android.support.v7.widget.CardView 
     xmlns:card_view="http://schemas.android.com/apk/res-auto" 
     android:id="@+id/card_view" 
     android:layout_width="match_parent" 
     android:layout_margin="10dp" 
     android:layout_height="110dp" 
     android:padding="15dp" 
     card_view:cardElevation="2dp" 
     card_view:cardCornerRadius="4dp"> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:text="Test" /> 

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

    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_above="@+id/bottom_navigation" 
     android:layout_alignParentTop="true" 
     android:foreground="@color/colorBackground"> 
    </ScrollView> 

    <com.aurelhubert.ahbottomnavigation.AHBottomNavigation 
     android:id="@+id/bottom_navigation" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:selectedBackgroundVisible="false" 
     android:layout_gravity="bottom" /> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/create_gain_expense" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|center" 
     android:layout_margin="15dp" 
     android:layout_above="@id/bottom_navigation" 
     android:src="@drawable/ic_add_white_24dp" 
     app:fabSize="normal" /> 

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

私が得たもの

Expectation

Reality

は、私はこれを変更するには何ができます?:D

答えて

2

AHBottomNavigationは、FloatingActionButtonよりも高いelevationを持っています。その理由は、FloatingActionButtonの上に表示されているからです。

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/create_gain_expense" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="bottom|center" 
    android:layout_margin="15dp" 
    android:layout_above="@id/bottom_navigation" 
    android:src="@drawable/ic_add_white_24dp" 
    app:fabSize="normal" 
    app:elevation="12dp" 
    app:borderWidth="0dp" /> 

#:より高いelevationFloatingActionButtonにを設定してみてください(AHBottomNavigationsourceから)

FloatingActionButtonはデフォルト6dp標高を持っており、AHBottomNavigationのデフォルトelevation8dpです。AHBottomNavigationの代わりにandroid.support.design.widget.BottomNavigationViewを使用することもできます。以下は

アプリ構造の正射図である:

enter image description here

documentationを参照してください。

希望これが役立ちます〜

+0

私の神、簡単な解決策、助けてくれてありがとう! :) –

0

ss

このコードを試してみてください:

<?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:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/container"> 

    <android.support.v7.widget.CardView 
     xmlns:card_view="http://schemas.android.com/apk/res-auto" 
     android:id="@+id/card_view" 
     android:layout_width="match_parent" 
     android:layout_margin="10dp" 
     android:layout_height="110dp" 
     android:padding="15dp" 
     card_view:cardElevation="2dp" 
     card_view:cardCornerRadius="4dp"> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:text="Test" /> 

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

    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_above="@+id/bottom_navigation" 
     android:layout_alignParentTop="true" 
     android:foreground="@color/white"> 
    </ScrollView> 

    <android.support.design.widget.BottomNavigationView 
     android:layout_width="match_parent" 
     android:layout_height="56dp" 
     android:layout_weight="1" 
     android:layout_gravity="bottom" 
     android:background="@color/green" 
     app:itemIconTint="@color/white" 
     app:itemTextColor="@color/white" 
     android:id="@+id/bottomnav" 
     app:menu="@menu/main"> 


    </android.support.design.widget.BottomNavigationView> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/create_gain_expense" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="bottom|center" 
     android:layout_margin="15dp" 
     android:layout_above="@id/bottom_navigation" 
     android:src="@drawable/ic_add_black_24dp" 
     app:fabSize="normal" 
     app:elevation="12dp" 
     app:borderWidth="0dp" /> 

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

あなた自身とこの下のナビゲーションバーを置き換えることができます。

関連する問題