有一天收到用户的反馈,用户名带有emoji显示不出来。之前开发的时候确实没考虑到emoji的问题。识别emoji,安卓官方是介绍了EmojiCompat支持库,它能够让Android设备及时兼容最新的表情符号。那么废话不多说,怎么使用它呢?
1.打开应用的 build.gradle 文件
2.将支持库添加到 dependencies 部分,这会让最终打包的apk大一些。
dependencies {
...
implementation "com.android.support:support-emoji:26.0.0"
implementation "com.android.support:support-emoji-appcompat:26.0.0"
implementation "com.android.support:support-emoji-bundled:26.0.0"
}
3.然后初始化EmojiCompat,在onCreate时调用它
private fun initEmojiCompat() {
val config: EmojiCompat.Config
config = BundledEmojiCompatConfig(context!!)
config.setReplaceAll(true)
EmojiCompat.init(config)
}
4.之后在xml使用它
<androidx.emoji.widget.EmojiAppCompatTextView
android:id="@+id/user_name"
android:layout_width="wrap_content"
android:maxWidth="100dp"
android:layout_height="wrap_content"
android:text="您尚未登录"
android:maxHeight="40dp"
android:textColor="#747781"
android:textSize="15dp"
tools:layout_width="100dp"
android:textStyle="bold"
/>
5.动态设置username
userName.text = UserManager.userInfo.name // 当name包含emoji的时候就能正常显示了。
更具体的一下设置,可以查看官方文档
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。