为了账号安全,请及时绑定邮箱和手机立即绑定

onCreateonCreateContextMenu的其它参数的作用

@Override
public void onCreateContextMenu(ContextMenu menu, View view, ContextMenu.ContextMenuInfo menuInfo) {
    //设置Menu显示内容
    menu.setHeaderTitle("文件操作");
    menu.setHeaderIcon(R.mipmap.ic_launcher);
    //通过读取xml文件来设置
    this.getMenuInflater().inflate(R.menu.menu_context,menu);

    super.onCreateContextMenu(menu, v, menuInfo);
}

如上,onCreateContextMenu,除了menu,还有view
和menuInfo两个参数,它们怎么使用,或者它们的功能是什么?

正在回答

1 回答

menuInfo:

API文档的解释是:

Additional information regarding the creation of the context menu.  For example,  AdapterViews use this to pass the exact item position within the adapter that initiated the context menu.

我的理解是:ListView、GridView等AdapterView利用这个参数传递了被点击item的具体position或id等信息。

用处:获取长按项的值,作为上下文菜单的标题。例如:

int position = ((AdapterContextMenuInfo)menuInfo).position;  
menu.setHeaderTitle(mDatas.get(position).title);

view:注册该上下文的view。例如:

this.registerForContextMenu(mListView);

则此处view即为mListView。

希望我的解释对你有用~


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第2季)
  • 参与学习       62396    人
  • 解答问题       207    个

本课程讲带你熟悉Android开发中常用的调试方式,菜单、调试程序

进入课程

onCreateonCreateContextMenu的其它参数的作用

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信