2016-11-30 15 views
0

Android Lollipop以降、通常は問題があります。しかし、私はすでにすべてを試しました。 私はこのレイアウトを持っている:Recyclerviewのコンテンツがナビゲーションバーの後ろに表示される

activity_main_content
<android.support.v4.widget.DrawerLayout 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:id="@+id/drawer_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:openDrawer="start" 
    android:fitsSystemWindows="true" 
    > 

    <include 
     layout="@layout/activity_main_content" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 

    <android.support.design.widget.NavigationView 
     android:id="@+id/nav_view" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="start" 
     app:headerLayout="@layout/nav_header_activity_main" 
     app:itemTextColor="@color/nav_selected" 
     app:itemIconTint="@color/nav_selected" 
     app:menu="@menu/activity_main_drawer" 
     > 
    </android.support.design.widget.NavigationView> 


    <android.support.design.widget.NavigationView 
     android:id="@+id/filter_nav_view" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="end" 
     app:itemTextColor="@color/nav_selected" 
     app:itemIconTint="@color/nav_selected" 
     app:menu="@menu/activity_consoles_drawer" 
     > 
    </android.support.design.widget.NavigationView> 

</android.support.v4.widget.DrawerLayout> 

私はこれ持っている:私は、ウィンドウの設定/機能を変更したりRecyclerViewと何のための典型的な初期化をやっている私のコードで

<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" 
    xmlns:card_view="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/rootlayout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context="com.robinstrutz.gamereleases.Activities.Activity_Main"> 

    <android.support.design.widget.AppBarLayout 
     android:id="@+id/appBarLayout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     > 
     <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/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:layout_scrollFlags="scroll|enterAlways" 
      android:background="?attr/colorPrimary" 
      android:elevation="3dp" 
      > 
     </android.support.v7.widget.Toolbar> 
    </android.support.design.widget.AppBarLayout> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/recyclerView" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scrollbars="vertical" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" 
     /> 

    <ProgressBar 
     android:id="@+id/loading_bar" 
     style="?android:attr/progressBarStyleHorizontal" 
     android:progressDrawable="@drawable/progress_drawable" 
     android:indeterminate="true" 
     android:layout_gravity="bottom" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/settings_fab" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/ic_settings_white_24dp" 
     android:layout_gravity="center_horizontal|bottom" 
     android:layout_margin="10dp" 
     app:backgroundTint="@color/colorAccent" 
     android:tint="@color/colorPrimary" 
     app:borderWidth="0dp" 
     app:elevation="3dp" 
     android:transitionName="fab" 
     android:stateListAnimator="@animator/raise" 
     /> 

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

をelse。だから私のRecyclerViewの内容は、ナビゲーションバーの後ろの画面の一番下に表示されます。私はすでにfitSystemWindows,clipToPaddingおよびclipToChildrenを使って試してみました。

私は私のスタイルは、これは失敗しますが、それはそれはないどのように見えるかと思った:RecyclerViewlayout_marginBottomを追加せずにこの問題を修正する方法

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
    <item name="android:windowBackground">@color/background</item> 


    <item name="android:fontFamily">sans-serif-medium</item> 
    <item name="android:textSize">14sp</item> 
    <item name="android:fontFeatureSettings">smcp, onum</item> 
    <item name="android:letterSpacing">0.02</item> 

</style> 

任意の提案ですか?異なるデバイス上のナビゲーションバーとの高さの差異のためです。

+1

'android:fitsSystemWindows =" false "' 'CoordinatorLayout'の内部は役に立ちますか? –

+0

スナップショットは提供できますか? – SAM

+0

@R.Zagórski修正しなかった – Muffin

答えて

1

これはToolbarを設定するときにapp:layout_scrollFlags="scroll|enterAlways"を使用した結果です。 この設定をオンにすると、ツールバーの下のレイアウトの高さがデバイスで表示されるものよりも大きくなります。ツールバーをスクロールしてスムーズにスクロールできるようにするために、いくつかの追加機能が含まれています。

コンテンツをスクロールする必要がない場合は、スクロールフラグ(app:layout_scrollFlags="enterAlways")を削除するだけです。

関連する問題