android menu 怎么得到item
2个回答
展开全部
android 中的menu一般是指上下文菜单或者是选项菜单
其中上选项菜单是可以在布局中res下的menu中在xml布局中写好布局来的然后通过java代码中的onCreateOptionsMenu来加载选项菜单,android4.4高级版本后是自动把菜单加载到标题栏上的,而不是低版本的按下menu键才显是出来的,上下文菜单是是通过onCreateContextMenu这个方法来注册上下文菜单的
下面讲讲如何获取menu中的item
获取上下文菜单的item其实就是当单机选项菜单时会触发这个方法
public boolean onContextItemSelected(MenuItem mi){
//判断单击的是哪个菜单项,并针对性的作出响应。
switch (mi.getItemId()){
case FONT_RED:
title.setTextColor(Color.RED);
break;
case FONT_GREEN:
title.setTextColor(Color.GREEN);
break;
case FONT_BLUE:
title.setTextColor(Color.BLUE);
break;
case MENU1:
createdialog();
break;
}
return true;
}
获取选项菜单的item其实就是当单击选项菜单时会触发这个方法
public boolean onMenuItemSelected(int featureId, MenuItem item) {
// 利用switch根据ItemId区分点击的是哪个菜单 以便正确响应用户操作
MenuItem temp= item;
switch (item.getItemId()) {
case R.id.rename:
createdialog();
break;
case R.id.red:
title.setTextColor(Color.RED);
break;
case R.id.green:
title.setTextColor(Color.GREEN);
break;
case R.id.blue:
title.setTextColor(Color.BLUE);
break;
// case R.id.choose_color:
// createpopupmenu(temp);
// break;
}
return super.onMenuItemSelected(featureId, item);
}
展开全部
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.myinfo, menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// 搜索
case R.id.info_search:
根据ID
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.myinfo, menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
// 搜索
case R.id.info_search:
根据ID
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询