gpt4 book ai didi

java - 在图片之间切换大小写

转载 作者:太空宇宙 更新时间:2023-11-03 13:34:20 24 4
gpt4 key购买 nike

基本上我想在可绘制资源之间切换,但我不知道该怎么做。我把它全部写在一个 If 语句中,但是它太长太乱而且它没有按照我想要的方式执行,因为如果他们输入错误的字母它不会停止。

我想做的是,如果用户输入一个字母,背景将变为下一个字母,例如,如果用户输入 A,背景将变为 B,依此类推。它现在确实可以工作,但是错误的是,如果用户在字母 A 上并且用户错误地输入了字母 P,背景将切换到 Q 而不是告诉用户他们错了。

我确实将此代码作为 else if 而不是 If 语句,但我只是想我今天会更改它。谁能解释一下我如何将这个 If 语句放入 case 语句中?谢谢你的帮助

             if (words.getText().toString().equalsIgnoreCase("A")) {

gestureViewer.setBackgroundResource(R.drawable.lettersb);

} else {
onDestroy();
}
if (words.getText().toString().equalsIgnoreCase("B")) {
gestureViewer.setBackgroundResource(R.drawable.lettersc);
} else {
}
if (words.getText().toString().equalsIgnoreCase("C")) {
gestureViewer.setBackgroundResource(R.drawable.lettersd);
} else {
}
if (words.getText().toString().equalsIgnoreCase("D")) {
gestureViewer.setBackgroundResource(R.drawable.letterse);
} else {
}
if
(words.getText().toString().equalsIgnoreCase("E")) {
gestureViewer.setBackgroundResource(R.drawable.lettersf);
} else {
}
if (words.getText().toString().equalsIgnoreCase("F")) {
gestureViewer.setBackgroundResource(R.drawable.lettersg);

} else {
}
if (words.getText().toString().equalsIgnoreCase("G")) {
gestureViewer.setBackgroundResource(R.drawable.lettersh);
}else {
}
if (words.getText().toString().equalsIgnoreCase("H")) {

gestureViewer.setBackgroundResource(R.drawable.lettersi);
}else {
}
if (words.getText().toString().equalsIgnoreCase("I")) {
gestureViewer.setBackgroundResource(R.drawable.lettersj);
} else {
}
if (words.getText().toString().equalsIgnoreCase("J")) {
gestureViewer.setBackgroundResource(R.drawable.lettersk);
}else {
}
if (words.getText().toString().equalsIgnoreCase("K")) {
gestureViewer.setBackgroundResource(R.drawable.lettersl);
}else {
}
if (words.getText().toString().equalsIgnoreCase("L")) {
gestureViewer.setBackgroundResource(R.drawable.lettersm);
}else {
}
if (words.getText().toString().equalsIgnoreCase("M")) {
gestureViewer.setBackgroundResource(R.drawable.lettersn);
}else {
}
if (words.getText().toString().equalsIgnoreCase("N")) {
gestureViewer.setBackgroundResource(R.drawable.letterso);
}else {
}
if (words.getText().toString().equalsIgnoreCase("O")) {
gestureViewer.setBackgroundResource(R.drawable.lettersp);
}else {
}
if (words.getText().toString().equalsIgnoreCase("P")) {
gestureViewer.setBackgroundResource(R.drawable.lettersq);
}else {
}
if (words.getText().toString().equalsIgnoreCase("Q")) {
gestureViewer.setBackgroundResource(R.drawable.lettersr);
} else {
}
if (words.getText().toString().equalsIgnoreCase("R")) {
gestureViewer.setBackgroundResource(R.drawable.letterss);
} else {
}

if (words.getText().toString().equalsIgnoreCase("S")) {

gestureViewer.setBackgroundResource(R.drawable.letterst);
}else {

}

if (words.getText().toString().equalsIgnoreCase("T")) {
gestureViewer.setBackgroundResource(R.drawable.lettersu);
}else {

}

if (words.getText().toString().equalsIgnoreCase("U")) {
gestureViewer.setBackgroundResource(R.drawable.lettersv);
}else {

}
if (words.getText().toString().equalsIgnoreCase("V")) {
gestureViewer.setBackgroundResource(R.drawable.lettersw);
}else {

}
if (words.getText().toString().equalsIgnoreCase("W")) {
gestureViewer.setBackgroundResource(R.drawable.lettersx);
}else {

}
if (words.getText().toString().equalsIgnoreCase("X")) {
gestureViewer.setBackgroundResource(R.drawable.lettersy);
}else {

}
if (words.getText().toString().equalsIgnoreCase("Y")) {
gestureViewer.setBackgroundResource(R.drawable.lettersz);
}else {

}
if (words.getText().toString().equalsIgnoreCase("Z")) {
gestureViewer.setBackgroundResource(R.drawable.lettersa);

} else {

}
}
public void beforeTextChanged(CharSequence s, int start, int count, int after){

}
public void afterTextChanged(Editable s) {


}
});

}

最佳答案

使用跟随

char ch=words.getText().toString().charAt(0));

switch(ch-'A')
{
case 0:
//A;
break;
case 1:
//B;
break;
.....
}

通过这个你可以将 if 语句转换为 switch case:

你也可以有 drawable 数组,那么你也不需要使用 switch case:

int[] arr=new int[]{R.id.drawable_A, .......};

那么设置颜色就是

char ch=words.getText().toString().charAt(0));
int index=ch-'A';
view.setBackgroundResource(index);

关于java - 在图片之间切换大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9108241/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com