0

好的,我注意到在 android 软键盘中,当用户提示插入笑脸时,用户想要发送笑脸时,会出现一个 andriod 笑脸列表供用户选择,我注意到笑脸旁边是一个:)(它因人而异关于笑脸的心情)我认为代码会读

<Key
    android:keylabel:=":)"
    android:keyOutputText="@drawable/image...." />

我相信(如果我错了,请纠正我)如果使用手动输入 a:) 可绘制图像仍然会出现?我是否正确...其次,如果我添加自己的表情符号而不是使用 :) 我使用“ * ”作为 Keylabel,而我自己的图像作为可绘制的输出文本,用户是否能够使用我的表情符号?

最后,如果我只希望他们能够选择我的一个表情符号来使用而不看到“ * ”..我可以只使用 android:KeyoutputText 来生成图像还是 android:keylabel 充当排序提示的??

4

1 回答 1

0

首先, keyOutputText 不能引用可绘制对象。它必须是文本,一个字符串。

除非它是该应用程序的内置笑脸之一,否则您的表情不会出现在文本框(短信框或您正在输入的任何地方)中。否则,他们只会看到类似这样的内容:“=)”。要对其进行测试,请尝试在 SMS 中发送“:-)”(取决于您的 SMS 应用程序,它可能会或可能不会显示为图标)和 Google 搜索框中。我向您保证,您不会在搜索框中看到图标。

注意:您可能希望为您的键定义 android:keyIcon,以便它们显示笑脸图标而不是输出文本(即“=”,参见 android:keyOutputText)。

要回答您的问题,如果用户手动输入“:)”,这用户按下具有 android:keyOutputText=":)" 的键相同。

对于第二个问题,您的“表情”实际上最终会成为一个连续发送多个字符的键。它使人们不必键入':'、'-'、')'。取而代之的是,他们只需按一下键,就会出现他们笑脸的三个字符。

对于最后一个问题,keyOutputText 无法生成图像。只有显示文本的应用程序才能将文本转换为图像。简而言之,键盘用于发送和编辑文本,而不是图标和图像。

如果您还有任何问题,请给我发送电子邮件:我已经为 Android 编写软键盘快半年了,所以我非常熟悉触摸输入的工作原理。

于 2012-04-09T03:08:09.613 回答