我在我的应用程序中动态添加了菜单。但是如果有很多菜单,那么很难知道当前选择了哪个菜单。所以我想更改所选菜单的背景颜色或至少更改所选菜单项的文本颜色。
@Override
public boolean onPrepareOptionsMenu(Menu menu)
{
menu.clear();
if (!(courseNameList == null))
{
for (int i = 0; i < courseNameList.size(); i++)
{
Course c = courseNameList.get(i);
menu.add(0, c.getCourse_id(), 0, c.getCourse_name());
}
}
menu.add("About Us");
return super.onPrepareOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
int courseId = item.getItemId(); //CourseId
String courseName = item.getTitle().toString(); //course name
return super.onOptionsItemSelected(item);
}
这里courseNameList是动态对象列表,包含课程名称,id。它在菜单中添加。因此应用程序用户应该知道当前选择了哪个菜单。