问题标签 [android-contextmenu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4044 浏览

android - 如何判断输入法选择器是打开还是关闭?

我的应用使用 . 打开输入法选择器(您选择键盘的菜单)InputMethodManager.showInputMethodPicker()。我的应用程序实际上并没有创建选择器(它是由 InputMethodManager 创建的),但我知道它是 aContextMenu并且它的 id 是R.id.switchInputMethod.

在此处输入图像描述

选择器是多步骤向导的一部分,因此我需要知道选择器何时关闭,以便我的应用程序可以继续下一步。现在,如果默认键盘发生更改,我正在检查后台线程,但如果用户选择相同的键盘或按下回,这将无济于事。

所以我需要一种方法来判断选择器何时关闭(或其他一些聪明的方法来知道何时继续)。

提前致谢...

0 投票
3 回答
4961 浏览

android - Android ListView 上下文菜单

我正在尝试创建一个ContextMenu当用户在我的ListView. 但是,当我点击我的项目时,我的代码没有显示任何内容。有人可以检查我的代码。谢谢你。

0 投票
1 回答
449 浏览

android - ActionMode 的位置相关动作与上下文菜单一样

在较旧的应用程序中,我通常会使用onCreateContextMenu()以下签名进行上下文操作:

menuInfo将为我提供正在构建上下文菜单的列表中的哪个项目的信息。然后我可以有权Uri找到适合它的操作并将它们创建为菜单项(使用自动意图或其他方式)。

现在,使用更新的 API,替换它的是上下文操作栏,使用ActionMode

但是在这里,我如何区分项目和/或获取此位置信息?

对于批处理模式,不存在这样的参数是有意义的,因为您应该只提供适用于任何事物的操作。但是对于单模式,除了按钮现在在操作栏中之外,这不完全等同于旧的 API 吗?

参考:http: //developer.android.com/guide/topics/ui/menus.html#context-menu

0 投票
1 回答
1009 浏览

android - 长按 listView 行中的特定项目时获取 ContextMenu

我使用基本适配器来填充列表视图,该列表的每一行都有 3 ImageView

我想ContextMenu在长按其中一个图像时显示一个并获取图像位置(不是通过单击列表行,而是单击图像本身),我试图listview在活动中膨胀该行并获取图像然后注册此图像用于contextMenu([registerForContextMenu(imgLeft)])但没有任何效果。

我想onLongClickListener在行中的每个图像上调用事件,但我遇到了一个问题,即如何在方法()contextMenu中的baseAdapter(此处没有活动)中调用(show-open getView)...?或者我如何contextMenubaseAdapter...中注册这些图像?

我在这里和谷歌搜索了很多解决方案,但一无所获。

0 投票
1 回答
1716 浏览

android - 长按操作不调用 onLongClick()

我正在尝试在我的应用程序中实现浮动上下文菜单。我正在关注谷歌提供的一个例子:http: //developer.android.com/guide/topics/ui/menus.html,但在开头卡住了那段代码:

我已将日志检查放入onLongClick(View view)方法中以查明它是否实际被调用。当我长按 ListView 中的某个项目时,什么也没有发生(我Log.v没有记录任何内容)。我想知道本教程是否缺少某些内容(layout.xml 中的某些声明)?

0 投票
2 回答
490 浏览

android - 如何在上下文菜单中获取行值

可能重复:
如何使用光标在上下文菜单中获取行值?

我创建了一个ContextMenu并使用了以下代码:

通过按任何列表项,它每次都返回第一行值。请建议,如何获得按下的行值。

0 投票
1 回答
657 浏览

android - 如何使用上下文菜单选项“编辑”查找 EditText 值

我是 android 新手,我正在使用上下文菜单,我正在尝试获取保存在数据库中的 EditText 值。请帮助我下面是我的代码:

上下文菜单项选项:

如果有任何其他方法,我可以获得 Edittext 值,请告诉我。谢谢。

0 投票
2 回答
4884 浏览

android - 使用 OnContextItemSelected 从 ListView 项中检索文本

我有一个带有删除和类似选项的“经典”上下文菜单的 ListView。由于我从 SharedPreferences 对象中删除,我需要检索键,即设置到 ListView 项目中的文本。

我试过以下代码:

但是,不幸的是,它在尝试从视图中检索文本时崩溃,正如我从日志中知道的那样。

0 投票
1 回答
149 浏览

android - 在显示时更改 Android ContextMenu 项目(ICS 之前)

我正在尝试将已显示的ContextMenu项目设置为不可见( )(在 期间将菜单的引用保存为成员)。item.setVisible(false)onCreateContextMenu()

在 2.3 上执行此操作时出现异常:

01-17 09:54:42.563: E/AndroidRuntime(2494): java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. [in ListView(16908823, class com.android.internal.app.AlertController$RecycleListView) with Adapter(class com.android.internal.view.menu.MenuBuilder$MenuAdapter)]

当然,我所有的代码都在 UI 线程中运行。

我猜ContextMenu在 2.3 中是使用ListView相应的 `ListAdapter. 在 ICS 中,不会抛出此异常,并且该项目按照我的计划变得不可见。

有人知道如何在 2.3 上执行此操作吗?

一种解决方法是不模仿ContextMenuvia Dialog,但我宁愿坚持ContextMenu

0 投票
1 回答
1887 浏览

android - 选择上下文菜单项时出现空指针异常

我有一个项目清单。当我长按一个项目时,我会弹出一个上下文菜单,其中包含 3 个选项来编辑、删除和添加到收藏夹。但是,当我从上下文菜单中选择第一项来编辑联系人时,我收到以下错误:

java.lang.RuntimeException:无法启动活动 ComponentInfo{com.example.oopca2/com.example.oopca2.EditActivity}:java.lang.NullPointerException

这是我的代码:

AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();

}

这是 EditActivity.class:

}

我不知道我哪里出错了。任何帮助将非常感激!谢谢。

日志:

编辑活动.xml