带透明操作栏的SlideMenu

时间:2014-08-11 12:52:28

标签: android android-fragments android-actionbar

使用以下代码,我为FragmentActivity& amp做了一个透明动作栏。所有片段:

protected void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);

    getWindow().requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
    ActionBar actionBar = getActionBar();
    actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#64000000")));

    setContentView(R.layout.main_slidemenu);
             .
             .
             .
}

但我有一个问题,我需要在动作栏下打开SlideMenu,但它打开我所有的布局。

2 个答案:

答案 0 :(得分:0)

您可能正在寻找ActionBar叠加模式。

requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);之前调用setContentView()为单个活动启用它。或者通过将android:windowActionBarOverlay设置为true来主题化。

答案 1 :(得分:0)

如果您使用过SlidingMenu库,可以使用:

setSlidingActionBarEnabled(false);

但根据您提供的链接,您已使用NavigationDrawerNavigationDrawer我认为您可以在其布局xml中使用layout_marginTop作为您的NavigationDrawer,为了获得更好的效果,请动态获取ActionBar高度然后设置保证金。

并尝试删除以下行:

getWindow().requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY);

我之前使用过NavigationDrawer而没有设置Layout_marginTop和Window.FEATURE_ACTION_BAR_OVERLAY,而是在我的ActionBar下面。