我将一些自定义项目放在我的 ActionBarSherlock AB 中,如下所示SherlockFragmentActivity
:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.menu_builtin, menu);
MenuItem selectAll = menu.findItem(R.id.selectall);
selectAll.setActionView(R.layout.selectalllayout);
return super.onCreateOptionsMenu(menu);
}
单击自定义项时既onMenuItemSelected
不会onOptionsItemSelected
调用也不会调用,当我使用 menu.add(String) 添加“标准项”时会调用它们。我也试过:
selectAll.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
// TODO Auto-generated method stub
return false;
}
});
和
selectAll.getActionView().setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
他们也没有被调用。我的布局组件是可点击的,与菜单有关的一切都是从 ABS 导入的,而不是从 android 导入的。
关于这里有什么问题的任何想法?