android - 使用 SlidingMenu 和 ActionBar Sherlock 的 Overlay 切割 Action Bar

标签 android overlay actionbarsherlock

我正在为黑色行动 2 指南应用程序使用 ActionBarSherlock 库和滑动菜单库,并尝试在滑动菜单的同一 Activity 中插入漂亮的“覆盖”功能。 结果是:

  • 叠加层不起作用
  • 操作栏剪切

这是代码:

    requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
    super.onCreate(savedInstanceState);
    setContentView(R.layout.c_m_pyrrhicvictory);   
    Resources res = getResources();
    SlidingMenu menu = new SlidingMenu(this);
    menu.setMode(SlidingMenu.LEFT);
    menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
    menu.setShadowWidthRes(R.dimen.shadow_width);
    menu.setShadowDrawable(R.drawable.shadow);
    menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
    menu.setFadeDegree(0.35f);
    menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
    menu.setMenu(R.layout.main_slidingmenu);
    getActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setBackgroundDrawable(getResources().
         getDrawable(R.drawable.ab_bg_black));
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setSubtitle("1/10 Standard");
    getSupportActionBar().setTitle("Missions");

截图: Main Activity SlidingMenu

最佳答案

我找到了解决方案。 在文件 SlidingMenu.java 中找到函数

public void attachToActivity(Activity activity, int slideStyle) {
        attachToActivity(activity, slideStyle, false);
    }

并将第三个参数更改为true, attachToActivity( Activity ,slideStyle,真); 即 actionbarOverlay 参数应设置为 true。 这个对我有用。 不要忘记在 Menu 布局中添加 topMargin 或 padding,因为第一个列表项可能会被 ActionBar 隐藏。参见 CustomViewBehind.java 中的 onLayout 函数。

关于android - 使用 SlidingMenu 和 ActionBar Sherlock 的 Overlay 切割 Action Bar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14161738/

相关文章:

css - div 忽略之前的 div

android - 如何使用 ActionBar Sherlock 设置选项卡样式

android - fragment 变为可见时的监听器

android - Android Studio中构建Gradle文件中的问题

java - 在 Android Studio 0.3.6 中添加外部库

android - ndk-stack 获取不到全栈

Css 覆盖在 Firefox 中工作,但在 Chrome 中出现问题

wpf - 从 WPF 的内部渲染到 Directx 应用程序

android - 使用 SherlockFragmentActivity 时应用崩溃

java - 如何将十六进制颜色代码分配给java类文件中的任何数据类型