昨天,我发现了一个很棒的库,该库使我可以在操作栏的左上角具有一个“facebook菜单”,该按钮在按下时将在左侧的菜单项中滑动。
问题是我也希望利用ActionBarSherlock库来确保我的应用程序与操作栏向后兼容。使用库I时,除其他外,需要像这样重写onOptionsItemSelected:
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
int id = item.getItemId();
if (id == android.R.id.home) {
rbmView.toggleMenu();
return true;
} else {
return super.onOptionsItemSelected(item);
}
}
现在,我进入库,看到开发人员已将onOptionsItemSelected设为最终。我删除了它,并尝试再次覆盖它,只是发现该产品是,每当我按下按钮时都没有任何 react 。没事
关于如何将darvds_ribbonmenu库与actionbarsherlock一起使用的任何想法吗?
最佳答案
事实证明,在使用ABS时,您需要指定MenuItem的命名空间,以确保您覆盖了正确的方法。我的解决方案如下:
@Override
public boolean onOptionsItemSelected(com.actionbarsherlock.view.MenuItem item)
{
int id = item.getItemId();
Log.d("item ID : ", "onOptionsItemSelected Item ID" + id);
if (id == android.R.id.home) {
rbmView.toggleMenu();
return true;
} else {
return super.onOptionsItemSelected(item);
}
}
关于android - 从SherlockFragmentActivity覆盖onOptionsItemSelected,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10909358/