Java Android应用程序无法识别设备上自动完成的单词
我最近创建了一个应用程序,它从Edittext字段获取用户输入,并将其与预定义字符串进行比较。在模拟器中,它工作得非常完美,但当我把它放在我的android设备上并在那里进行测试时,它似乎无法识别设备自动完成的单词,也就是说,当我键入部分单词时,建议由我填写并选择。当它应该是真的时候,它会比较假 为什么会这样?我是否可以集成一个xml标记来删除编辑文本字段的自动建议功能 以下是我的编辑文本xml的外观:Java Android应用程序无法识别设备上自动完成的单词,java,android,xml,Java,Android,Xml,我最近创建了一个应用程序,它从Edittext字段获取用户输入,并将其与预定义字符串进行比较。在模拟器中,它工作得非常完美,但当我把它放在我的android设备上并在那里进行测试时,它似乎无法识别设备自动完成的单词,也就是说,当我键入部分单词时,建议由我填写并选择。当它应该是真的时候,它会比较假 为什么会这样?我是否可以集成一个xml标记来删除编辑文本字段的自动建议功能 以下是我的编辑文本xml的外观: <EditText android:id="@+id/st
<EditText
android:id="@+id/st5ans"
android:layout_width="@dimen/form_width"
android:layout_height="@dimen/input_height"
android:textSize="@dimen/statenamesize"
android:layout_marginTop="@dimen/maingamespaceing"
android:layout_toRightOf="@id/state5"
android:autoText="false"
android:gravity="center"
android:layout_below="@id/st4ans"
android:background="@android:color/white"
/>
temp是字符串temp=y.getText.toString的Edittext值 您想使用一个。它使用适配器将输入与可能的建议相匹配。如果它在emulator上工作,但在您的设备上不工作,则设备的数据肯定存在一些差异。确保您没有与空白字符串或其他与EditText无关的问题进行比较。请将整个代码段放在比较字符串的位置,以便我们了解您到底在做什么,您正在侦听哪个侦听器事件。您在哪里比较硬编码字符串和文本字段?好的,这是比较代码段。这有点解决了它,哑自动更正在字符串中添加了一个空格字符,所以我必须使用.trim方法进行修改。谢谢
EditText ans1 = (EditText)findViewById(R.id.st1ans);
EditText ans2 = (EditText)findViewById(R.id.st2ans);
EditText ans3 = (EditText)findViewById(R.id.st3ans);
EditText ans4 = (EditText)findViewById(R.id.st4ans);
EditText ans5 = (EditText)findViewById(R.id.st5ans);
EditText[] ans={ans1, ans2, ans3, ans4, ans5};
int count=0;
int number=0;
String feed="";
//this loop tallys up all of our correct answers and then builds
// feedback for wrong answers to give to
//the user, using our data hashmap
for (EditText y : ans)
{
String temp=y.getText().toString();
if(temp.equalsIgnoreCase(data.get(stats[number%stats.length].getText().toString())))
{
count += 1;
} else {
if (firstpass)
{
feed += " The capitol of " +
drawlist.get(drawn.get(number)) + " is " +
data.get(drawlist.get(drawn.get(number))) + " " + "\n";
}
else
{
feed += " "+drawlist.get(drawn.get(number))+
" is the capitol of "+
data.get(drawlist.get(drawn.get(number))) + " " + "\n";
}
}
number += 1;
}