首页编程selecteditem,...方法与onOptionsItemSelected()方法有什么区别

selecteditem,...方法与onOptionsItemSelected()方法有什么区别

编程之家2023-11-0299次浏览

朋友们,你是否曾想过深入了解selecteditem和...方法与onOptionsItemSelected()方法有什么区别的内涵?在本文中,我将为你详细解析这两个话题,希望能给你带来全新的视角和思考。

selecteditem,...方法与onOptionsItemSelected()方法有什么区别

...方法与onOptionsItemSelected()方法有什么区别

在点击选项菜单(OptionsMenu:点击menu弹出的菜单)的菜单项时即调用了onMenuItemSelected也调用了onOptionsItemSelected,于是疑惑他们有什么不一样。然后再看上下文菜单(ContextMenu:长按控件时弹出。例如在长按EditTextView时弹出输入的法选择菜单),点击上下文菜单的菜单项时即调用了onMenuItemSelected也调用了onContextItemSelected,于是问题就明朗了。在父Activity的onMenuItemSelected方法中判断如果是选项菜单就走onMenuItemSelected,如果是上下文菜单就走onContextItemSelected。

除此还有

onPrepareOptionsMenu:在显示选项菜单前调用

onOptionsMenuClosed:在选项菜单关闭时被调用

onContextMenuClosed:在上下文菜单关闭时调用

android 的 getSelectedItemPosition() 方法的问题

这是一个默认值,不是手动去选择某一个item的position值,这个是在控件初始化完成后,这个值就已经是定死的,不管选择哪个这个值都是既定的值。

selecteditem,...方法与onOptionsItemSelected()方法有什么区别

这个是会在选择其中一个item的时候会改变,如果在点击一个item之后,再Log.e("!",dialog.getListView().getSelectedItemPosition()+"");

应该可以看到是现在想要的值一定是在触发这个item被选中的事件中。

dialog.getListView().getSelectedItemPosition()

getListView是返回了listview

然后调用listview的getSelectedItemPosition,这个不是点单选以后返回选中,而是指的那一个条目的时候选中的。

可以去看看api文档说明关于listview。

selecteditem,...方法与onOptionsItemSelected()方法有什么区别

感谢您的阅读!希望本文对解决您关于selecteditem和...方法与onOptionsItemSelected()方法有什么区别的问题有所帮助。如果您还有其他疑问,欢迎随时向我们提问。

获嘉网?获嘉县有多少个乡镇成都市网站制作(成都网站建设)