问题标签 [inputmethodmanager]
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.
android - Main Activity 销毁后不会被垃圾回收,因为它被 InputMethodManager 间接引用
我从这里关注了“避免内存泄漏”文章。
然而,所提出的解决方案并没有解决泄漏问题。我在 Windows XP (SDK 2.3.1) 上使用 android 模拟器对此进行了测试。我转储了堆并检查了主要活动仍在堆中(我使用了 MAT)
这是我所做的:
- 使用 HelloWorldActivity 创建 HelloWorld 应用程序(它没有子视图)
- 运行模拟器并启动 HelloWorld 应用程序。
- 单击后退键将其关闭。
- 导致 DDMS 中的 gc 和转储堆 <-- 在这里我找到了 HelloWorldActivity 实例。
- 其中的“GC Roots 路径”显示了以下路径。
HelloWorldActivity <- PhoneWindow$DecorView <- InputMethodManager
InputMethodManager 是一个单例和三个对引用 HelloWorldActivity 的 DecorView 的引用。
我不明白为什么 InputMethodManager 即使在活动被销毁后仍然引用 DecorView 实例。
有什么方法可以确保主要活动在关闭后被销毁并可以进行 GC 处理?
android - android InputMethodManager 输入类型
是否可以从键盘获取当前输入类型(文本或数字)?或者当输入类型改变时是否触发了事件?我需要根据用户退出该屏幕时的输入类型在屏幕上设置输入类型。谢谢
android - android 应用程序中未定义 InputMethodManager 关键字
当用户单击按钮时,我正在尝试使用以下代码隐藏软键盘:
但我收到一个错误:
InputMethodManager 未定义
我在想我需要添加一个导入语句吗?如果是这样,有人知道吗?或者我该如何解决这个问题?
android - Android InputMethodManager 与 InputConnection null
我是项目中的 android 新手,我可以选择在数据库中搜索记录。当用户按下按钮时,我有一个 EditText 和一个 Button 数据库将被查询用户在 EditText 中输入的文本。
显示搜索结果后第一次正常工作。为了更改搜索文本,用户希望在出现的 EditText 软键盘中编辑文本,但 EditText 对用户操作和软键盘输入没有响应。
EditText 作为标题添加到 ListView
当用户第二次单击进行编辑时,EditText 日志显示以下消息
java - InputMethodManager 在 webview 中显示小键盘
我正在使用 InputMethodManager 在需要时以编程方式显示软键盘
是否有强制显示为数字或电话键盘的键盘?
编辑
抱歉,在我不得不离开电脑一段时间之前,我匆忙输入了这个。我忘了提到可能是最关键的部分。我正在尝试在 webview 中执行此操作。我关注的文本框的输入类型设置为电话。出于某种原因,小键盘不会出现在自动对焦上,这就是为什么我试图用 InputMethodManager 强制它。我当前的方法将键盘显示在正确的字段上,它似乎没有正确读取类型和显示。
感谢您迄今为止的所有回答(确实回答了我措辞不佳的问题)。
android - InputMethodManager showSoftInput method
What is the purpose of the method showSoftInput in class InputMethodManager? I am new to android, and well for me the documentation is not very clear :
Explicitly request that the current input method's soft input area be shown to the user, if needed. Call this if the user interacts with your view in such a way that they have expressed they would like to start performing input into it.
From what I have understood it opens the keyboard, am I am right? Why should we use this method, doesn't touching an EditText open automatically the keyboard??
android - 我可以在自定义应用内键盘上使用 Android InputMethodManager 吗?
这InputMethodManager
是应用程序可以用来与系统键盘交互的服务。喜欢的编辑器EditText
也使用它来间接通知键盘更改(例如,updateSelection
)。
我可以得到这样的InputMethodManager
参考
我的问题是这似乎只适用于系统键盘。我可以将InputMethodManager
用于自定义应用内键盘吗?如果它只是一个独立的应用程序,我不在乎,但我在一个库中包含了一个自定义键盘,它将在许多应用程序中使用。我需要一种标准的方式让编辑与键盘进行通信。
我是否必须编写自己的输入法管理器,或者有没有办法将标准InputMethodManager
与我的自定义应用内键盘一起使用?
更新
如果无法使用标准输入法管理器,这里有一些线索可以帮助我实现我自己的自定义输入法管理器。
InputMethodManager
(文档)(源代码)InputMethod
界面InputMethodSession
界面KeyboardView.OnKeyboardActionListener
接口(键盘实现它)InputMethodService
(键盘扩展此)(文档)(源代码)
android - Android Studio - 输入法管理器
Android Studio 版本:2.3.3 下面的代码不起作用,它应该隐藏键盘,但不是。请帮忙。
xamarin - Xamarin Forms,在Android中连接蓝牙键盘时启用软键盘
目前,我正在使用 Xamarin 表单和 android 开发我的第一个项目。我有一个与安卓设备配对的蓝牙条码扫描仪。所以软键盘在连接时不会出现。我尝试了很多我在互联网上找到的选项。比如从CustomEntryRenderer等地方强制软键盘调用。在某些情况下,可以在 Android 的 Language/InputMethods 菜单中进行处理,但并非在所有手机中都可以。也许我错过了一些东西,并从错误的地方调用了代码。问题是如何显示软键盘,即使连接了蓝牙键盘?
android - 使用 InputMethodManager 的软件键盘导致的堆栈溢出错误
我正在尝试在我的活动中手动显示/隐藏软键盘,以便在焦点上编辑文本视图,但在某些设备上,它会显示sys/err
并导致我的应用程序崩溃或 ANR,并带有以下堆栈跟踪
这有时
手动显示/隐藏软键盘的代码:
布局代码示例:
这个设备有问题吗?如何解决这个错误?