Android键盘InputConnection的setSelection方法无法正确处理Unicode字符?
创始人
2024-10-08 13:01:46
0

可以使用SpannableString类来解决此问题。下面是示例代码:

InputConnection inputConnection = getCurrentInputConnection();
if (inputConnection != null) {
    String text = "Hello \uD83D\uDE00";
    SpannableString spannableString = new SpannableString(text);
    int emojiStart = text.indexOf("\uD83D\uDE00");
    spannableString.setSpan(new ForegroundColorSpan(Color.RED), emojiStart, emojiStart + 2, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
    inputConnection.commitText(spannableString, 1);
    
    // 设置光标位置
    inputConnection.setSelection(7, 7);
}

在上面的示例中,用SpannableString将包含Emoji表情的字符串进行处理,并使用setSpan设置表情的文本颜色。然后,使用commitText方法将包含SpannableString的文本提交给InputConnection。最后,使用setSelection方法来设置光标位置。

相关内容

热门资讯

透视曝光"xpoke... 透视曝光"xpoker辅助神器"确实存在有辅助方法(哔哩哔哩)1、许多玩家不知道xpoker辅助神器...
透视了解"wepok... 透视了解"wepoker黑侠辅助器"本来真的有辅助攻略(哔哩哔哩)1、wepoker黑侠辅助器破解器...
透视关于"sohoo... 透视关于"sohoo开挂辅助"总是是真的辅助器(哔哩哔哩)1、起透看视 sohoo开挂辅助辅助软件价...
透视详情"hhpok... 透视详情"hhpoker怎么防作必弊"总是真的有辅助工具(哔哩哔哩)1)hhpoker怎么防作必弊免...
透视揭露"pokem... 透视揭露"pokemmo辅助官网"本来是有辅助软件(哔哩哔哩)1、下载好pokemmo辅助官网透视辅...
透视关于"智星德州插... 透视关于"智星德州插件"切实真的有辅助方法(哔哩哔哩)1、智星德州插件模拟器是什么优化,智星德州插件...
透视了解"wepok... 透视了解"wepoker可以开透视吗"一贯有辅助攻略(哔哩哔哩)1、让任何用户在无需wepoker可...
透视分享"约局吧游戏... 透视分享"约局吧游戏挂"本来是真的辅助技巧(哔哩哔哩)1.约局吧游戏挂 选牌创建新账号,点击进入游戏...
透视普及"epoke... 透视普及"epoker免费透视脚本"切实是有辅助教程(哔哩哔哩)进入游戏-大厅左侧-新手福利-激活码...
透视分享"wepok... 透视分享"wepoker免费透视脚本"本来是真的辅助神器(哔哩哔哩)1、这是跨平台的wepoker免...