修改AutoCompleteTextView以显示具有本地特殊字符的结果

时间:2015-11-19 10:21:29

标签: android autocomplete textview spinner autocompletetextview

很难为此问题撰写适当的主题。所以,让我说清楚。

我正在制作一个本地应用程序,处理包含土耳其语字母的数据(ĞÜŞİÖÇğüşıöç)。问题是,我必须使用的工业平板电脑在其虚拟键盘上没有这些字符。所以我需要一个特殊的AutoCompleteTextView,它将一些字母视为相同。例如,如果客户端在文本框中输入“sener”,则“şener”也应显示为下拉列表中的结果。有没有办法实现这一目标?

1 个答案:

答案 0 :(得分:0)

你有几个选择。例如,当用户输入ozgur时,请将o替换为ö,将u替换为ü,以显示此单词与土耳其字母的组合。这样的事情。

private char toTurkish(char c) {

    if(c == 'o')  return 'ö';
    if(c == 'u')  return 'ü';
    //...
}

private void usage() {

   String word = "ozgur";

   for(i = 0; i < word.length; i++) {

       word.setCharAt(i, toTurkish(word.charAt(i)));
   }

}

或者通过向您的应用添加土耳其语词典文件来创建包含土耳其语单词的手动列表。在用户输入时使用Regex进行比较。

或者在键盘上方创建一个布局并放置字母。我会选择这种方式。不需要AutoCompleteTextView。