我正在使用 Sherlock 操作栏。
我的操作栏上有 2 个项目。当选择该项目(活动)时,我想更改图标的图像。
这是我的Java代码
@Override
public boolean onPrepareOptionsMenu (Menu menu){
MenuInflater inflater = getSupportMenuInflater();
inflater.inflate(R.menu.menutes, menu);
todaySched=menu.findItem(R.id.todaySched);
if(todaySched.isEnabled()){
todaySched.setIcon(R.drawable.calendarselected);
}
return true;
}
但是当我这样做时,图标会变成双倍,并且图标也不会改变。
有人可以帮忙吗?
使用 onOptionsItemSelected 方法
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.todaySched:
// put your code here to change the icon
return true;
default:
return super.onOptionsItemSelected(item);
}
}
您可能需要为 ActionBar Sherlock 库包含正确的命名空间,以确保它覆盖正确的菜单项。所以该方法的开头将如下所示:
@Override
public boolean onOptionsItemSelected(com.actionbarsherlock.view.MenuItem item)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)