2017-04-21 126 views
0

我有摺疊工具欄中的選項菜單的片段。當我摺疊我的工具欄時,菜單在狀態欄上方移動。所以,崩潰後,我沒有看到 菜單選項。我表現出來的截圖:Android:塊選項菜單,而摺疊工具欄

enter image description here enter image description here

這裏我的.xml代碼:

<android.support.design.widget.CoordinatorLayout 
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.support.design.widget.AppBarLayout 
    android:id="@+id/abl_toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"> 

    <android.support.design.widget.CollapsingToolbarLayout 
     android:id="@+id/ctl_toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     app:layout_scrollFlags="scroll|snap|exitUntilCollapsed" 
     app:contentScrim="?attr/colorPrimary"> 

     <ImageView 
      android:id="@+id/iv_avatar" 
      android:layout_width="match_parent" 
      android:layout_height="220dp" 
      android:src="@drawable/ic_main_logo" 
      android:scaleType="centerInside" 
      android:background="@drawable/shape_profile_avatar_background" 
      app:layout_collapseMode="parallax"/> 

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

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

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

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

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/btn_avatar" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_margin="16dp" 
    android:elevation="4dp" 
    app:elevation="4dp" 
    app:srcCompat="@drawable/vector_photo_camera_black_24dp" 
    app:layout_anchor="@id/abl_toolbar" 
    app:layout_anchorGravity="bottom|right|end"/> 

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

這裏我的代碼片段來自:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setHasOptionsMenu(true); 

    mActivity = (MainActivity) getActivity(); 
    mAdapter = new ProfileRVAdapter(); 
} 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup parent, Bundle savedInstanceState) { 
    View view = inflater.inflate(R.layout.fragment_profile, parent, false); 

    mIVAvatar = (ImageView) view.findViewById(R.id.iv_avatar); 

    LinearLayoutManager manager = new LinearLayoutManager(mActivity); 

    RecyclerView rvResults = (RecyclerView) view.findViewById(R.id.rv_results); 
    rvResults.setLayoutManager(manager); 
    rvResults.setAdapter(mAdapter); 

    Toolbar toolbar = (Toolbar) view.findViewById(R.id.toolbar); 
    toolbar.setTitle(R.string.activity_main_profile_label); 

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
     toolbar.setPadding(0, mActivity.getStatusBarHeight(), 0, 0); 
     toolbar.getLayoutParams().height = toolbar.getLayoutParams().height + mActivity.getStatusBarHeight(); 
    } 

    mActivity.setSupportActionBar(toolbar); 

    view.findViewById(R.id.btn_avatar).setOnClickListener(this); 
    view.findViewById(R.id.btn_cancel).setOnClickListener(this); 
    view.findViewById(R.id.btn_gallery).setOnClickListener(this); 
    view.findViewById(R.id.btn_photo).setOnClickListener(this); 

    mBottomSheet = BottomSheetBehavior.from(view.findViewById(R.id.ll_bottom_sheet)); 
    mBottomSheet.setState(BottomSheetBehavior.STATE_HIDDEN); 

    return view; 
} 

@Override 
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { 
    inflater.inflate(R.menu.menu_profile, menu); 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
     case R.id.menu_edit: 
      return true; 
     case R.id.menu_logout: 
      return true; 
     default: 
      return super.onOptionsItemSelected(item); 
    } 
} 

知道爲什麼它發生了?

已編輯/已解決: 我解決了我的問題。錯誤是在工具欄屬性,我忘了應用程序:layout_collapseMode =「pin」。的Toolbarlayout.xml代碼

+0

我沒有看到任何「超過」狀態欄。你到底什麼意思? – creativecreatorormaybenot

+1

我的選項菜單,即第一次截圖時,消失了,當我摺疊工具欄 - 第二屏幕截圖 –

回答

0

集設計代碼Activity's layout文件& 集Activity代碼如下工具欄,

Toolbar toolbar = (Toolbar) view.findViewById(R.id.toolbar); 
setSupportActionBar(toolbar); 

//添加此行的代碼在活動文件。

+0

看到我編輯的答案,將幫助你 –

+0

我無法移動活動xml文件中的工具欄。如您所見,屏幕有底部導航視圖。活動通過完全不同的工具欄和功能實現兩個片段。所以我只能在片段中充氣工具欄 –