android - 打开 ContextMenu 时抓取列表项 TextView 值

标签 android android-listview contextmenu textview

ListView 上单击/短按,我可以这样做:

protected void onListItemClick(ListView listView, View v, int position,
        long id) {
    tvInt = reviews.get(position);
}

如何为 ContextMenu 执行此操作?我的 ListView 只包含一个 TextView

编辑:我想在 ListView 中获取 TextView 的值,而不是 ContextMenu

最佳答案

MenuItem打包额外信息,您可以从中提取 position ListView 中被点击的行然后只需使用您在 onListItemClick 中使用的代码回调:

@Override
public boolean onContextItemSelected(MenuItem item) {
     AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
     int clickedPosition = info.position;
     tvInt = reviews.get(position);
     // ...

同样的信息,ContextMenuInfo , 在 onCreateContextMenu 中可用如果你想在构建 ContextMenu 时获取字符串回调.

关于android - 打开 ContextMenu 时抓取列表项 TextView 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11321238/

相关文章:

android - 改造给出 java.lang.VerifyError

android - 为什么 AlertDialog.Builder 没有 setOnDismissListener 或 setOnShowListener 方法?

android - 小部件 ListView 未使用 notifyAppWidgetViewDataChanged 进行更新

java - 我想使用 json 将 Listview 数据发送到 Android 中的另一个 Activity

c# - 以编程方式添加 DataGridView 列

windows - 为特定扩展名(不是文件类型)添加 Windows Shell 上下文菜单条目

android - 自定义媒体播放器的锁屏媒体控制

java - Android 可以通过蓝牙支持 Zeroconf/Bonjour 吗? TCP/IP 怎么样?

android - 突出显示列表项

java - 上下文菜单未显示在 ListActivity 中