【问题标题】:Android : How to programmatically open the soft keyboard in Emoji ViewAndroid:如何以编程方式在表情符号视图中打开软键盘
【发布时间】:2017-02-22 03:33:15
【问题描述】:

如我所见,在 android 上显示默认表情符号的一种方法是在输入文本上使用以下内容。

android:inputType="textMultiLine|textShortMessage"

当我搜索时,我找不到通过 Java 执行此操作的方法。我想要实现的是,当软键盘打开时,让用户点击一个按钮以在表情符号视图和普通键盘视图之间切换。

自定义表情符号键盘。

我已经实现了这一点,但是使用设备上已经存在的表情符号来进行 kik-kat 发布会更好、更轻松。

Google 会在这些视图之间切换。

在 Google Allo 上,按下 editText 内的表情符号图标切换视图。

【问题讨论】:

标签: java android keyboard android-softkeyboard emoji


【解决方案1】:

也许这会对你有所帮助:

https://blog.swiftkey.com/tech-blog-android-input-method-subtypes/

您可以在下面的链接中看到类似表情符号子类型的东西。

public static RichInputMethodSubtype getEmojiSubtype()

https://android.googlesource.com/platform/packages/inputmethods/LatinIME/+/master/java/src/com/android/inputmethod/latin/RichInputMethodSubtype.java

【讨论】:

  • 有帮助吗?告诉我。
  • 无法让它工作,也许你应该在你的答案上写更多的代码,让它更简单,即使对于不太高级的编码人员。
【解决方案2】:

文本视图

使用TextView的input type不包含你想要的...

键盘

似乎您可以向用户显示可用keyboards 的列表。 (该设备上可用的那些)

然后,看看它是否有可用的Emoji Key Board。但似乎至少需要 Android 4.1。

强制键盘部分

Not possible 据我所知。看来你可以disable他们。

*我很想展示如何做到这一点,这看起来是一件很巧妙的事情。但是我的 google-fu 没有显示任何关闭的内容:(

【讨论】:

  • 如果您查看 Google 的 Allo,您认为他们是如何做到的?看起来他们似乎没有使用自定义表情符号实现,而是使用原生表情符号实现。
  • 您能否提供一个指向 Google Allo 的链接,其中显示您想要的行为?
【解决方案3】:

尝试了一段时间,我什至没有达到这个目标,即使injecting a keyevent

在 Google Allo 中,这看起来是一个自定义实现。我有 switftkey 主题键盘,在 KitKat Moto G(第一代)上它非常出色。我还在带有本机键盘的 Marshmallow Moto G(第 2 代)上进行了测试,但已收缩,您可以看到这不是真正的软键盘:

我认为没有custom emoji's implementation 就无法实现这一目标。

【讨论】:

  • 嘿,现在还是这样吗?几年过去了
猜你喜欢
  • 2014-10-04
  • 1970-01-01
  • 1970-01-01
  • 2021-11-28
  • 1970-01-01
  • 2017-01-17
  • 1970-01-01
  • 2015-12-11
  • 1970-01-01
相关资源
最近更新 更多