问题标签 [ime]
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 - 安卓虚拟键盘输入法的方法
我希望为 android 实现一个虚拟键盘 IME。但是当我参考 android 提供的软键盘示例时,它说
此代码侧重于简单性而非完整性,因此绝不应将其视为完整的软键盘实现。
那么在实现自定义 IME 时我还需要注意哪些其他事项。
谢谢..
android - “IME 死了”和 android.os.DeadObjectException
我正在不同设备上测试我的游戏,当用户更改音量(上/下)或按下菜单按钮或类似按钮时,其中一个(Asus Garmin A10)随机崩溃(3/5 次)。这可能是原生崩溃,因为我没有收到 ACRA logcat(手机离我很远,我只是 ACRA 进行远程调试)。用户告诉我会发生什么。在我的 HTC 上,我只有一个烦人的警告,但游戏运行良好,没有任何反应。这是警告:
10-31 19:52:29.547: W/InputMethodManager(8441): IME 死了: com.android.inputmethod.latin/.LatinIME drop: KeyEvent{action=0 code=25 repeat=0 meta=0 scancode=114 mFlags= 8} 10-31 19:52:29.547: W/InputMethodManager(8441): android.os.DeadObjectException 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.os.BinderProxy.transact(Native Method ) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 com.android.internal.view.IInputMethodSession$Stub$Proxy.dispatchKeyEvent(IInputMethodSession.java:277) 10-31 19:52:29.547: W /InputMethodManager(8441): 在 android.view.inputmethod.InputMethodManager.dispatchKeyEvent(InputMethodManager.java:1344) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.view.ViewRoot.deliverKeyEvent(ViewRoot. java:2426) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.view。ViewRoot.handleMessage(ViewRoot.java:1741) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.os.Handler.dispatchMessage(Handler.java:99) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.os.Looper.loop(Looper.java:123) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.app.ActivityThread.main(ActivityThread.java :4627) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 java.lang.reflect.Method.invokeNative(Native Method) 10-31 19:52:29.547: W/InputMethodManager(8441): 在java.lang.reflect.Method.invoke(Method.java:521) 10-31 19:52:29.547: W/InputMethodManager(8441): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java :868) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 10-31 19:52:29.547:W/InputMethodManager(8441): 在 dalvik.system.NativeStart.main(Native Method) 10-31 19:52:29.707: W/InputMethodManager(8441): IME 死了: com.android.inputmethod.latin/.LatinIME 丢弃: KeyEvent{action=1 code=25 repeat=0 meta=0 scancode=114 mFlags=8} 10-31 19:52:29.707: W/InputMethodManager(8441): android.os.DeadObjectException 10-31 19:52:29.707 : W/InputMethodManager(8441): 在 android.os.BinderProxy.transact(Native Method) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 com.android.internal.view.IInputMethodSession$Stub$Proxy .dispatchKeyEvent(IInputMethodSession.java:277) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 android.view.inputmethod.InputMethodManager.dispatchKeyEvent(InputMethodManager.java:1344) 10-31 19:52:29.707 : W/InputMethodManager(8441): 在 android.view.ViewRoot.deliverKeyEvent(ViewRoot.java:2426) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 android.view.ViewRoot.handleMessage(ViewRoot.java:1741) 10-31 19:52:29.707: W/InputMethodManager(8441): 在android.os.Handler.dispatchMessage(Handler.java:99) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 android.os.Looper.loop(Looper.java:123) 10-31 19: 52:29.707: W/InputMethodManager(8441): 在 android.app.ActivityThread.main(ActivityThread.java:4627) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 java.lang.reflect.Method .invokeNative(Native Method) 10-31 19:52:29.707: W/InputMethodManager(8441): at java.lang.reflect.Method.invoke(Method.java:521) 10-31 19:52:29.707: W/ InputMethodManager(8441): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 10-31 19:52:29.707: W/InputMethodManager(8441): at dalvik.system.NativeStart.main(Native Method)
例如,每次我使用音量按钮时都会出现这种警告。我正在使用 AndEngine 作为游戏的 2D 引擎。我想那里出了点问题,但我无法应付。我该如何处理这个问题?有什么建议吗?
android - 从 IME 启动 Activity 以添加文本 (Android)
我正在尝试在 Android 上创建一个带有一个附加按钮的自定义键盘,该按钮将启动一个活动(在本例中是听用户说话)并将其转换为文本,类似于 Google 的语音识别按钮的工作方式。
我已经创建了自定义键盘(使用 Android 开发者页面中的SoftKeyboard演示)并单击我添加的按钮可以很好地启动语音聆听活动,并且当我记录结果时它们会显示正确。但是,当我尝试做这样的事情时:
在活动中,我没有得到任何结果。我确定getCurrentInputConnection()
is not null
,并且编辑器类型(调用时getCurrentInputEditorInfo()
)不是类型null
,所以我知道我可以将文本作为字符串输入,而不仅仅是逐个字符输入(如此处所建议)。
我知道问题可能是我无法访问我新启动的活动中的输入连接,但正如我在其他地方和这里发现的那样,startActivityForResult
不能从InputMethodServices
.
基本上有什么方法可以影响从我新启动的活动中显示的文本,或者有什么方法可以设置监听器以在活动完成后更改文本?
感谢你们的任何帮助。
ios - 如何在 iPhone 模拟器上启用日文键盘?
我有一个带有 UISearchBar 的 UITableview,其中包含日语单词,我想测试它是否可以用日语键盘搜索日语单词。我找不到如何更改 iPhone 模拟器上的默认键盘。
android - 如何修复自定义软键盘视图的低分辨率?
我正在使用适用于 10 英寸平板电脑的 android SDK 软键盘示例开发自定义软键盘。
第一个问题:我注意到我的键盘在平板电脑上的分辨率非常低,这在下图中很明显。实际上,在我的键盘区域,分辨率与掌上电脑的分辨率相同。
如何将其分辨率更改为平板电脑(10 英寸)的正常分辨率?
在我的软键盘中getMaxWidth();
返回 545,这对于平板电脑来说非常低。
第二个问题:如何更改关键标签的字体大小?
非常感谢,
我的键盘视图:
我想要的视图:
.net - 使用 IME 调用 OnKeyPress 事件两次
我已经实现了一个Textbox
支持文本输入的用户。
如果我选择 IME Japanase(或其他亚洲输入法)作为我当前的输入并输入一些文本,当文本发送到控件时,OnKeyPress
每个字符都会调用两次。
实际上ProcessKeyEventArgs
被称为一次 withWM_CHAR
和一次 with WM_IME_CHAR
。最后OnKeyPress
用相同的输入调用两次。
android - Android IME:隐藏符号行
如何摆脱 IME 顶部的符号行?我的意思是顶部的行
!? , "' : ( ) - /
如下图:
谢谢!
android - 在Android通知栏中检测触摸事件
我正在为 Android 平板电脑(Honeycomb)编写自定义 InputMethod。我注意到默认键盘实现在空格键(和其他键)下方的通知区域检测触摸事件并激活最近的键。我想实现类似的功能。但是,当您触摸通知区域时,我的 InputMethod(使用自定义视图)只是被隐藏了。如何检测和处理通知区域上的触摸事件,而不是让它们隐藏我的 InputMethod?
ime - 为什么 ImmSetOpenStatus 第一次不起作用?
我在Win7中文版下使用ImmSetOpenStatus关闭输入法编辑器。但是,我注意到它第一次不起作用。为什么?谢谢你。
android - ExpandableListView 中的自定义视图不会获得点击事件
我的活动中有两个组的 ExpandableListView。每个组都有一个自定义视图。我可以单击每个组中的按钮,它可以工作。如果我单击一组自定义视图中的文本字段,则会显示软键盘。但是一旦我关闭它,任何一个组中都不会注册任何点击。键盘关闭后 ExpanableListView 失去焦点。关闭对话框后,如何将焦点重新设置在列表视图上?如果我折叠并展开组,它会被重置。我尝试了各种听众无济于事。
我的类和布局有点复杂,但我将其剥离到最低限度,这是我的代码。
布局文件是 main.xml
search1.xml
和 search2.xml