1

私はActivityに4つのタブがあります。 TabLayoutは下部に配置されています(これはガイドラインに違反していますが、それがデザインです)。 Fragmentのうちの1つにはタブがあり、上部に配置する必要がありますが、タイトルバーには影が付きます。フラグメント内のTabLayoutは、アクティビティのタイトルバーによってシャドーされています

Fragmentにタブを追加すると、ツールバーの影にならないようにするにはどうすればよいですか?ここで

activity_layout.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/bg_main" 
    android:orientation="vertical"> 

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

    <android.support.design.widget.TabLayout 
     android:id="@+id/tabs" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/bg_main_tabs" 
     app:elevation="@dimen/elevation" 
     app:tabIndicatorHeight="0dp"/> 
</LinearLayout> 

fragment_with_tabs.xmlです:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/bg_main" 
    android:orientation="vertical"> 

    <android.support.design.widget.TabLayout 
     android:id="@+id/clothes_tabs" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/colorAccent" 
     app:tabIndicatorColor="@color/colorPrimaryDark" 
     app:tabSelectedTextColor="@color/colorPrimaryDark" 
     app:tabTextColor="@android:color/white" /> 

    <android.support.v4.view.ViewPager 
     android:id="@+id/clothes_fragments" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 

</LinearLayout> 
+0

'app:elevation =" @dimen/elevation "'を削除します。 – AlphaQ

答えて

0

AppBarLayoutから標高を設定0に標高が理想的ですセットするが、とにかくあなたはこの

getSupportActionBar().setElevation(0); 
ような何かを行うことができます
+0

ありがとう!他の断片が見えるとき、どのように標高を戻すのですか?それぞれのsetElevationを呼び出す必要がありますか? – netimen

+0

カスタマイズされた昇格された動作のために、それぞれに標高を設定する必要があります。助けがあれば、回答を受け入れてupvoteしてください。 –

関連する問題