jjzjj

InputMethodService

全部标签

android - 如何以编程方式更改输入法?

我需要根据语言的变化来改变键盘。我做了一些研究,发现可以使用这些API来完成InputMethodManagersetInputMethod(android.os.IBinder,java.lang.String)InputMethodServiceswitchInputMethod(java.lang.String)对于第一个API,我需要一个IBindertoken,它可以通过调用从InputMethodService实例中获取mInputMethodService.getWindow().getWindow().getAttributes().token或者如果我有对InputM

android - 崩溃在 android.inputmethodservice.IInputMethodWrapper.setSessionEnabled(IInputMethodWrapper.java :280)

我的应用程序在Android4设备上崩溃。当我在viewPager中滚动recyclerView时会发生这种情况为什么会出现这个错误?0805/?W/Binder:CaughtaRuntimeExceptionfromthebinderstubimplementation.java.lang.NullPointerExceptionatandroid.inputmethodservice.IInputMethodWrapper.setSessionEnabled(IInputMethodWrapper.java:280)atcom.android.internal.view.IInpu

java - 来自扩展 InputMethodService 的类的 getDefaultTracker()?

我有一个正在开发的Android键盘应用程序,它输出简单的符号而不是语言,也就是说,我希望能够跟踪用户Activity,因为不涉及敏感信息或文字。问题是Android的InputMethodService确实不扩展Application,它允许您访问GoogleAnalytics的AndroidSDK(可能的措辞错误,在这里,随时纠正我)。我已遵循指南here开始,这是我引用的获取Tracker对象的代码:/**CopyrightGoogleInc.AllRightsReserved.**LicensedundertheApacheLicense,Version2.0(the"Lice

android - 如何在屏幕底部创建一个不是矩形的屏幕安卓键盘?

我想开发一个替换键盘,但恐怕Android假定通用键盘“区域”将是位于屏幕底部的单个矩形。如果我希望我的键盘由多种形状组成,而不只是位于屏幕底部怎么办?我是从一开始就注定了,还是有可能做我想做的事?在相关说明中,如果我只想在手机处于特定方向时显示键盘,但当手机处于不同方向时,使用的是普通软键盘怎么办?同样,运气不好还是可能?干杯! 最佳答案 IME只是一个窗口。它相对于屏幕底部定位,因此您无法真正控制它。但是你可以在其中绘制任何你想要的东西,或者对于你想要透明的地方。您可以通过以下方式控制从IME移出多少应用程序:http://de

java - 如何测试 InputMethodService

我有一个Android的基本实现InputMethodService我正在尝试为其编写单元测试。我的应用程序没有任何Activity,只有InputMethodService的实现。到目前为止,我已经有了一个运行良好的ServiceTestCase的基本实现:SoftKeyboardTest.javapublicclassSoftKeyboardTestextendsServiceTestCase{@OverrideprotectedvoidsetUp()throwsException{super.setUp();bindService(newIntent(this.getContex

android - 如何在 android 自定义 InputMethodService 上使用回车键进行搜索?

我想用我的android自定义键盘使用回车键进行搜索,但它不起作用。我已经映射了键,我只需要在搜索文本字段上触发“搜索操作”,就像在google上搜索一样。我试过这段代码来触发搜索操作,但它不起作用:ic.sendKeyEvent(newKeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_ENTER));这是我覆盖回车键事件的方法:publicclassKeyboardextendsInputMethodServiceimplementsKeyboardView.OnKeyboardActionListener{@Overridepublicv

Android InputMethodService 按键滑动语言更改

我用InputMethodService制作了一个Android自定义键盘应用程序。现在我想在spacekey上滑动,所以当用户滑动spacekey时,键盘语言会更改为下一个(向右滑动)或上一个(向左滑动)。publicclassCustomKeyboardextendsKeyboard{...}publicclassCustomKeyboardViewextendsKeyboardView{...}publicclassCustomKeyboardIMEextendsInputMethodServiceimplementsKeyboardView.OnKeyboardActionLi

android - 如何从 InputMethodService 获取窗口?

是否可以获取特定View(或PopupWindow)的Window对象?我的应用是一个键盘,所以它是一个服务(一个InputMethodService),而不是一个Activity。因此我不能使用Activity.getWindow()。但是,它有View,所以它大概也有一个窗口,不是吗?我如何获得它?提前致谢... 最佳答案 我找到了解决方案:InputMethodServiceims;...Dialogdialog=ims.getWindow();Windowwindow=dialog.getWindow();或者简单地说:Wi

android - InputMethodService 的仪器测试用例

我已经扩展了InputMethodService类来创建我的自定义IME。但是,我正在努力编写有效的Instrumentation测试用例来验证行为。以前是Service,可以使用ServiceTestCase进行测试.但它似乎已被弃用,新格式看起来像this.现在在给定的指导方针中,我正在努力处理这个fragment:CustomKeyboardServiceservice=((CustomKeyboardService.LocalBinder)binder).getService();因为我要扩展InputMethodService,它已经抽象出IBinder,我怎样才能获得Loc