【发布时间】:2016-09-27 05:21:13
【问题描述】:
我有一个 Edittext 来填写搜索字符串:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/search_input_edittext"
android:gravity="center_horizontal"
android:layout_gravity="center_horizontal" />
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:padding="10dp"
android:background="@drawable/add_to_cart_btn"
android:text="@string/search"
android:id="@+id/search_search_btn"
android:stateListAnimator="@null"
android:layout_gravity="center_horizontal" />
</LinearLayout>
但是我输入的越南语单词不是正确的getText().getString()。应该是(我手动输入的)
củ
但是我从代码中得到了什么:
EditText search_edittext = (EditText) v_iew.findViewById(R.id.search_input_edittext); //v_iew is from inflating for `AlertDialog`
search_edittext.getText().toString();
如下图:
我认为它们的编码方式不同。钩子必须在“u”上方。但如果我复制整个单词并粘贴到任何编辑器,它显示的内容完全相同。这是我粘贴到这里时的样子:
củ
如果我只复制钩子会发生这种情况
̉
它们看起来一样,但来自EditText 的内容不能用于进一步的工作。
如果我从互联网上复制单词并粘贴到搜索字段中,它就可以了!所以是我的输入法导致了这个问题。试图搜索将它们转换为 unicode(带有 \xxxx 的那个)但没有运气。
有人知道如何将输入转换为“正常格式”吗?感谢您的宝贵时间!
【问题讨论】:
-
要以您要求的格式获取它,您需要使用规范化表单 C
标签: android encoding utf-8 android-edittext