btntxt=alphbtn[0].getText().toString();
cntr=cnt;
Log.i("Chr", "" + cnt + " " + crtchr);
for (int i = 0; i<strlnth ; i++)
{
crtchr=(String.valueOf(curntnam.charAt(i)));
if (strlnth > 8 && i==7)
{
i++;
}
if (btntxt.equals((crtchr)))
{
bt[i].setText(crtchr);
cnt++;
}
Log.i("Chr", ""+crtchr);}
Log.i("BUTTN", ""+btntxt);
}
在上面的代码中,我想比较一个字符串和按钮文本,分别是每个按钮上的a-z。我使用按钮数组来存储所有26个字母按钮。当curntnam
包含8个字符的单词时,它可以正常工作,但是当单词的字符数超过8时,应用程序就会崩溃,并且在循环中记录并在logcat中正确地给出消息。当我点击错误时,这显示我错误
if (btntxt.equals((crtchr))){
那么我需要做些什么来使它超过8个字符呢?请帮助我,我的应用程序已完成,但此错误阻止我完成。
答案 0 :(得分:0)
btntxt
必须为null。 Control btntxt
为null或将此变量记录为控件。
答案 1 :(得分:0)
我的代码中有一个错误,其中for循环在8之后被召回,因此它崩溃了应用程序。现在我已经解决了我的问题。