Java 如何定义已单击的ListView?
我一直在开发Android应用程序,每个视图有3个Java 如何定义已单击的ListView?,java,android,listview,Java,Android,Listview,我一直在开发Android应用程序,每个视图有3个ListView和一个ContextMenu: @Override public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo info) { menu.add(Menu.NONE, CONTEXT_MENU_ITEM_DELETE, Menu.NONE, "Delete"); super.onCreateContextMenu(men
ListView
和一个ContextMenu
:
@Override
public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo info) {
menu.add(Menu.NONE, CONTEXT_MENU_ITEM_DELETE, Menu.NONE, "Delete");
super.onCreateContextMenu(menu, view, info);
}
点击捕捉注册:
this.registerForContextMenu(mFirstCategory);
this.registerForContextMenu(mSecondCategory);
this.registerForContextMenu(mMainCategory);
mFirstCategory、mSecondCategory、mMainCategory是列表视图。此外,我还提供了单击行的方法:
@Override
public boolean onContextItemSelected(MenuItem item) {
AdapterContextMenuInfo info=(AdapterContextMenuInfo)item.getMenuInfo();
String name = null;
switch (info.targetView.getId()) {
case (R.id.listViewFirst): name="First";
case (R.id.listViewSecond): name="Second";
case (R.id.listViewMain): name="Main";
}
Toast.makeText(this, name+"_"+String.valueOf(info.position), Toast.LENGTH_LONG).show();
return super.onContextItemSelected(item);
}
我需要定义
ListView
和ListView
单击的位置(行)。我的“开关/机箱”模块不工作。请告诉我,我怎样才能满足我的需要 targetView是ListView中的单行。它的父对象将是您的ListView:
final ListView listView = (ListView) info.targetView.getParent();
然后做:
switch (listView.getId())
targetView是ListView中的单行。它的父对象将是您的ListView:
final ListView listView = (ListView) info.targetView.getParent();
然后做:
switch (listView.getId())
不确定这是否是您定义的“开关/机箱块不工作”,但似乎您忘记调用
break代码>在每个案例之后
-因此名称
将始终是主
case (R.id.listViewFirst): name="First"; break;
case (R.id.listViewSecond): name="Second"; break;
case (R.id.listViewMain): name="Main"; break;
不确定这是否是您定义的“开关/机箱块不工作”,但似乎您忘记调用break代码>在每个案例之后
-因此名称
将始终是主
case (R.id.listViewFirst): name="First"; break;
case (R.id.listViewSecond): name="Second"; break;
case (R.id.listViewMain): name="Main"; break;
在某些情况下,targetView.getParent()返回null-知道为什么会发生这种情况(以及为什么它只偶尔发生)?在某些情况下,targetView.getParent()返回null-知道为什么会发生这种情况(以及为什么它只偶尔发生)吗?