0

我正在使用库 ActionBarSherlock,并放置一个带有属性的项目android:showAsAction="ifRoom|collapseActionView"。如何检查是否单击了 ActionBarSherlock 的后退按钮?谢谢!

4

2 回答 2

0

你必须覆盖

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case android.R.id.home:

    }
    return true;    
}

来自文档:

his hook is called whenever an item in your options menu is selected. 默认实现简单地返回 false 以进行正常处理(调用项目的 Runnable 或根据需要向其 Handler 发送消息)。您可以将此方法用于您希望在没有其他设施的情况下对其进行处理的任何项目。

于 2013-07-18T10:40:03.073 回答
0

上面的答案有效(谢谢)。但是对于我的代码,这个解决方案效果最好......

@Override
public boolean onOptionsItemSelected(
        com.actionbarsherlock.view.MenuItem item) {

    item.setOnActionExpandListener(new OnActionExpandListener() {

        @Override
        public boolean onMenuItemActionExpand(MenuItem item) {
                            // running changes ...
            return true;
        }

        @Override
        public boolean onMenuItemActionCollapse(MenuItem item) {

            //  running changes ...

            return true;
        }
    });

    return super.onOptionsItemSelected(item);
};
于 2013-07-28T13:32:17.383 回答