4

我的工具欄在backPressed時變得不可見或消失。只有在工具欄摺疊爲時纔會發生此情況。如果摺疊,backPressed時工具欄消失

  1. 我有一個RecyclerView上的一個分段
  2. 當我滾動回收工具欄崩潰
  3. 如果我的下一個活動,由一些回收itens的所謂輸入,然後按後退按鈕時,工具欄消失。
  4. 如果我滾動回收站,摺疊仍會發生,但工具欄不在那裏,只是一個沒有任何東西的垂直空間。

片段佈局

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="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"> 

    <android.support.design.widget.AppBarLayout 
    android:id="@+id/appbar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:minHeight="?attr/actionBarSize" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
    android:fitsSystemWindows="true"> 


     <!--Toolbar--> 
     <android.support.v7.widget.Toolbar 
      style="@style/mytoolbar_details" 
      android:id="@+id/toolbar" 
      app:layout_scrollFlags="scroll|enterAlways" 
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
      android:background="@color/theme_primary" 
      app:layout_collapseMode="none" /> 

    <!--Toolbar Sort--> 
    <android.support.v7.widget.Toolbar 
     style="@style/mytoolbar_details" 
     android:id="@+id/toolbar_sort" 
     android:title="Toolbar" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
     android:background="@color/theme_primary_dark" 
     android:visibility="gone" 
     app:layout_collapseMode="pin" /> 

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

    <android.support.v7.widget.RecyclerView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/fragment_tasklist_recyclerview" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

    <!--ADD Fragment Container--> 
    <RelativeLayout 
    android:id="@+id/add_container" 
    android:layout_width="match_parent" 
    android:fitsSystemWindows="true" 
    android:layout_height="match_parent" /> 
</android.support.design.widget.CoordinatorLayout> 

的片段調用佈局

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    fragmentView = inflater.inflate(R.layout.tasklist_fragment, container, false); 

一些可能的問題

W/View﹕ requestLayout() improperly called by android.support.v7.widget.Toolbar{335f934 V.E..... ......ID 0,0-1080,168 #7f0d009c app:id/toolbar} during layout: running second layout pass 

W/View﹕ requestLayout() improperly called by android.support.design.widget.CollapsingToolbarLayout{3c2cf991 V.ED.... ......I. 0,0-1080,420 #7f0d009a app:id/collapsing_toolbar} during second layout pass: posting in next frame 

回答

3

原來我的代碼沒問題。 該問題是由appcompat lib中的一些錯誤引起的。我剛剛將支持庫更新至22.2.1版,問題就消失了。

compile "com.android.support:appcompat-v7:22.2.1" 
compile "com.android.support:support-annotations:22.2.1" 
compile "com.android.support:design:22.2.1" 
compile 'com.android.support:recyclerview-v7:22.2.1' 
compile 'com.android.support:cardview-v7:22.2.1' 
+0

謝謝你的分享。 –