我在mainactivity中为搜索菜单按钮选择了onOptionsItemSelect :
public class MainActivity extends BaseActivity {
...
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId())
{
case R.id.action_search:
search();
return true;
}
return true;
}
,这在基本活动中:
public class BaseActivity extends AppCompatActivity implements View.OnClickListener{
...
@Override
public boolean onOptionsItemSelected(MenuItem item){
//int id = item.getItemId();
if(mToggle.onOptionsItemSelected(item)){
return true;
}
nDrawerLayout.closeDrawers(); //close menu after click
return super.onOptionsItemSelected(item);
}
但是使用这两个我不能使它们都不起作用。 (单击两者都不起作用)
有什么解决方法的想法吗?
答案 0 :(得分:1)
如果您没有点击,就必须在主要活动中致电super.onOptionsItemSelected(item)
。然后将在BaseActivity中调用onOptionItemSelected。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_search:
search();
return true;
}
return super.onOptionItemSelected(item);
}