问题标签 [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.

0 投票
1 回答
346 浏览

android - 安卓虚拟键盘输入法的方法

我希望为 android 实现一个虚拟键盘 IME。但是当我参考 android 提供的软键盘示例时,它说

此代码侧重于简单性而非完整性,因此绝不应将其视为完整的软键盘实现。

那么在实现自定义 IME 时我还需要注意哪些其他事项。

谢谢..

0 投票
1 回答
2401 浏览

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 引擎。我想那里出了点问题,但我无法应付。我该如何处理这个问题?有什么建议吗?

0 投票
1 回答
767 浏览

android - 从 IME 启动 Activity 以添加文本 (Android)

我正在尝试在 Android 上创建一个带有一个附加按钮的自定义键盘,该按钮将启动一个活动(在本例中是听用户说话)并将其转换为文本,类似于 Google 的语音识别按钮的工作方式。

我已经创建了自定义键盘(使用 Android 开发者页面中的SoftKeyboard演示)并单击我添加的按钮可以很好地启动语音聆听活动,并且当我记录结果时它们会显示正确。但是,当我尝试做这样的事情时:

在活动中,我没有得到任何结果。我确定getCurrentInputConnection()is not null,并且编辑器类型(调用时getCurrentInputEditorInfo())不是类型null,所以我知道我可以将文本作为字符串输入,而不仅仅是逐个字符输入(如此处所建议

我知道问题可能是我无法访问我新启动的活动中的输入连接,但正如我在其他地方和这里发现的那样,startActivityForResult不能从InputMethodServices.

基本上有什么方法可以影响从我新启动的活动中显示的文本,或者有什么方法可以设置监听器以在活动完成后更改文本?

感谢你们的任何帮助。

0 投票
3 回答
15352 浏览

ios - 如何在 iPhone 模拟器上启用日文键盘?

我有一个带有 UISearchBar 的 UITableview,其中包含日语单词,我想测试它是否可以用日语键盘搜索日语单词。我找不到如何更改 iPhone 模拟器上的默认键盘。

0 投票
1 回答
850 浏览

android - 如何修复自定义软键盘视图的低分辨率?

我正在使用适用于 10 英寸平板电脑的 android SDK 软键盘示例开发自定义软键盘。

第一个问题:我注意到我的键盘在平板电脑上的分辨率非常低,这在下图中很明显。实际上,在我的键盘区域,分辨率与掌上电脑的分辨率相同。

如何将其分辨率更改为平板电脑(10 英寸)的正常分辨率?

在我的软键盘中getMaxWidth();返回 545,这对于平板电脑来说非常低。

第二个问题:如何更改关键标签的字体大小?

非常感谢,


我的键盘视图: 在此处输入图像描述

我想要的视图: 在此处输入图像描述

0 投票
0 回答
160 浏览

.net - 使用 IME 调用 OnKeyPress 事件两次

我已经实现了一个Textbox支持文本输入的用户。

如果我选择 IME Japanase(或其他亚洲输入法)作为我当前的输入并输入一些文本,当文本发送到控件时,OnKeyPress每个字符都会调用两次。

实际上ProcessKeyEventArgs被称为一次 withWM_CHAR和一次 with WM_IME_CHAR。最后OnKeyPress用相同的输入调用两次。

0 投票
1 回答
246 浏览

android - Android IME:隐藏符号行

如何摆脱 IME 顶部的符号行?我的意思是顶部的行

!? , "' : ( ) - /

如下图:

截图 http://japan.gadgetmeet.com/uploadfiles/japansemagancom-1313029160/hacker-rsquo-s-keyboard-is-a-full-5-row-on-screen-keyboard-for-android_1.png

谢谢!

0 投票
0 回答
526 浏览

android - 在Android通知栏中检测触摸事件

我正在为 Android 平板电脑(Honeycomb)编写自定义 InputMethod。我注意到默认键盘实现在空格键(和其他键)下方的通知区域检测触摸事件并激活最近的键。我想实现类似的功能。但是,当您触摸通知区域时,我的 InputMethod(使用自定义视图)只是被隐藏了。如何检测和处理通知区域上的触摸事件,而不是让它们隐藏我的 InputMethod?

0 投票
1 回答
270 浏览

ime - 为什么 ImmSetOpenStatus 第一次不起作用?

我在Win7中文版下使用ImmSetOpenStatus关闭输入法编辑器。但是,我注意到它第一次不起作用。为什么?谢谢你。

0 投票
1 回答
2111 浏览

android - ExpandableListView 中的自定义视图不会获得点击事件

我的活动中有两个组的 ExpandableListView。每个组都有一个自定义视图。我可以单击每个组中的按钮,它可以工作。如果我单击一组自定义视图中的文本字段,则会显示软键盘。但是一旦我关闭它,任何一个组中都不会注册任何点击。键盘关闭后 ExpanableListView 失去焦点。关闭对话框后,如何将焦点重新设置在列表视图上?如果我折叠并展开组,它会被重置。我尝试了各种听众无济于事。

我的类和布局有点复杂,但我将其剥离到最低限度,这是我的代码。

布局文件是 main.xml

search1.xml

和 search2.xml