2

我决定为我的应用程序创建一个自定义键盘。我知道这不是最好的主意,因为它会损害用户友好性,这就是为什么我将在首选项中将其设为可选。

在课堂上全部完成后public class CustomKeyboard extends InputMethodService implements KeyboardView.OnKeyboardActionListener。我很难将它添加为softInputMethod. 我试过了,InputMethodManager但在投射它时我得到了不兼容的类型。

我发现我可以在没有服务的情况下获得它,但它是非常不推荐的,我需要一个全新的实现。

理想情况下,我会将它用于应用程序中的 EditText 命令行。所以直接绑定到它也可以完成这项工作。

隐藏系统输入法后,如何将这个输入服务设为默认?

谢谢。



PS如果有一个明显的简单方法可以做到这一点,我很抱歉,但我刚刚过渡到Android,我还在学习。

4

2 回答 2

1

在要更改输入法的文本字段上使用 android:inputMethod 。见https://developer.android.com/reference/android/widget/TextView.html#attr_android:inputMethod

您无法为整个设备设置默认输入法,但您可以在应用程序中逐个字段覆盖它。为您的 Activity 或应用程序的主题添加默认输入法应该为您应用中的所有文本视图覆盖它。

于 2016-07-04T20:19:05.397 回答
0

我认为您可以制作一个自定义视图来防止默认键盘(默认 InputMethodService,例如 SamsungKeyboard)弹出并显示您自己的。您放置所有键并与 onTouchListener 交互。

或者,如果您正在尝试制作自己的键盘应用程序,例如 SwiftKey,您可能需要阅读以下内容:( https://developer.android.com/guide/topics/text/creating-input-method.html )

于 2016-08-03T04:58:56.073 回答