[英]Android ArrayList TextView does't show text after setText
您好,我在制作应用程序时遇到了一些问题,无法在任何地方找到答案。 我有一个EditText供用户输入。 我有一个String字,并且有一个带有TextViews的ArrayList。 我想根据用户输入是否等于String中的字符来设置TextView的文本。 如果一个字符相等,则必须在正确的TextView中显示。 现在的问题是,如果我输入的字符应与单词中的字符匹配,即使我想在另一个TextView中显示StringBuilder时,它也不会显示任何内容,它看起来像是空的。
我有这个:
public void onClickButtons(View view) {
if(view==mBtnGuess) {
String getInput = mEtxtUserInput.getText().toString();
word = "someword";
if(getInput.length()==1) {
List<TextView> txtCharArr= new ArrayList<TextView>();
txtCharArr.add(mChar1);
txtCharArr.add(mChar2);
txtCharArr.add(mChar3);
txtCharArr.add(mChar4);
txtCharArr.add(mChar5);
txtCharArr.add(mChar6);
txtCharArr.add(mChar7);
txtCharArr.add(mChar8);
txtCharArr.add(mChar9);
txtCharArr.add(mChar10);
txtCharArr.add(mChar11);
txtCharArr.add(mChar12);
StringBuilder sb = new StringBuilder();
for(i=0;i<getInput.length();i++) {
if(getInput.equals(Character.toString(word.charAt(i)))) {
txtCharArr.get(i).setText(Character.toString(word.charAt(i)));
sb.append(Character.toString(word.charAt(i)));
}
}
}
}
}
我认为不是使用word.length()
而是使用getInput.length()
for(i=0;i<getInput.length();i++) {
if(getInput.equals(Character.toString(word.charAt(i)))) {
txtCharArr.get(i).setText(Character.toString(word.charAt(i)));
sb.append(Character.toString(word.charAt(i)));
}
}
因此,您将只循环一次,并仅检查getInput中单词的第一个字符s 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.