如何为Tablet横向模式禁用slidingMenu?

时间:2014-02-05 09:28:28

标签: android slidingmenu

我正在开发一个使用SlidingMenu和Action Bar Sherlock的Android应用程序。

在肖像模式下,每件事情都很好,但对于平板电脑横向模式,我是并排加载帧,所以那时我不想要slideMenu。

如何仅在横向模式下禁用它?

1 个答案:

答案 0 :(得分:2)

最好的方式和最动态的是您在bool.xmlres -> values

中创建res -> values-sw720dp-land文件

在bool.xml中添加values文件夹:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <bool name="allowSildingMenu">true</bool>
</resources>

values-sw720dp-land中的bool.xml写:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <bool name="allowSildingMenu">false</bool>
</resources>

然后阅读您活动中的值:

if(getResources().getBoolean(R.bool.allowSildingMenu) == true){
    //add sliding menu
} else
    //don't show it.

<强>更新

现在,如果您不想在上面的else语句中显示getSupportActionBar().setDisplayHomeAsUpEnabled(true),请向其添加false。

但是,如果您想将您重定向到之前的活动,则必须在onOptionsItemSelected函数中进行一些更改。

类似的东西:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // TODO Auto-generated method stub

    if(item.getItemId() == android.R.id.home) {
        if(getResources().getBoolean(R.bool.portrait_only) == true)
            //then open the slide menu..
        else
            super.onBackPressed();
    }
}

希望此解决方案适合您。