2

我在用 :

https://github.com/iPaulPro/SlidingMenu

实现 Facebook 类似滑动菜单的库,以及 ActionBarSherlock 库。

在我的情况下,BehindContentView 是一个 ListFragment。

1. 点击一个Image来获取backgroundView(调用toggle();)。

2. onListItemClicked 进入一个 Activity_2 显示被点击项目的文本。

3. 在这个 Activity_2 中,当我单击设备后退按钮时,我得到了主 Activity_1,但后面的视图是打开的。通常在 Facebook 或 Google+ 中的行为是,当您从任何其他 Activity 返回到 Activity_1 时,隐藏了 behindView。

4. 此外,即使在有这些行之后,在 Activity_2 上,主页似乎也无法正常工作(当我单击主页按钮时没有任何反应)。

    ActionBar bar = this.getSupportActionBar();
    bar.setDisplayHomeAsUpEnabled(true);
    bar.setDisplayOptions(0, ActionBar.DISPLAY_SHOW_TITLE);
    bar.setHomeButtonEnabled(true);

如何解决步骤3和4?

谢谢你

4

4 回答 4

6
SlidingMenu menu;

    @Override
public void onBackPressed() {
    if (menu.isMenuShowing()) {
        menu.showContent(true);
        return;
    }

    super.onBackPressed();
}

繁荣。如果菜单退出,则在活动中的后按,它就会消失

于 2013-03-31T00:38:14.000 回答
4

隐藏滑动菜单

onListItemClicked 调用 hide() 或 toggle()

对于 Home 按钮 ActionBar 它必须工作,就像这样处理它

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case android.R.id.home:
        // you code
        return true;
    }
于 2012-10-09T08:01:06.253 回答
3

要隐藏滑动菜单并打开需要的意图,您需要在单击时提供要打开的意图。这是一个小例子

private SlideMenu slidemenu
// this is from code. no XML declaration necessary, but you won't get state restored after rotation.
slidemenu = new SlideMenu(this, R.menu.slide, this, 333);
// this inflates the menu from XML. open/closed state will be restored after rotation, but you'll have to call init.
slidemenu = (SlideMenu) findViewById(R.id.slideMenu);
slidemenu.init(this, R.menu.IntentName, this, 333);

我使用了coboltforge.slidemenu图书馆。

我认为它在 iPaulPro/ SlidingMenulibrary 中会很相似。

于 2013-01-10T07:09:41.140 回答
0
@Override 
public boolean onKeyUp(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_BACK)) {
        getSlidingMenu().toggle(true);
        return false;
    } else {
        return super.onKeyUp(keyCode, event);
    }
}

只需将其放在您的活动中。

于 2013-05-07T12:36:23.187 回答