我在java中制作一个Android应用程序..而且基本上我有一个问题..我有一个按钮,它删除字符串中的最后一个字符..这个按钮将被使用很多,如果用户按下按钮当字符串为空时,应用程序收到错误消息并关闭..我想以某种方式阻止它..
这是onClickListener的当前代码..
back.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
value = value.substring(0, value.length() - 1);
numbersArea.setText(value);
}
知道我会怎么做?因为我昨天晚上尝试了所有想法。
答案 0 :(得分:3)
在substring
之前,请确保字符串的长度为> 0
if (!value.isEmpty()) {
value = value.substring(0, value.length() - 1);
numbersArea.setText(value);
}
如果您不进行此项检查,则某些字符串的长度为零,substring()
会抛出IndexOutOfBoundsException
。
答案 1 :(得分:1)
让你的听众如下:
back.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(!value.equals("") && value != null) {
value = value.substring(0, value.length() - 1);
numbersArea.setText(value);
}
}
基本上,它的作用是验证字符串是否为空且不同于null,如果不是,则进入if
语句。
如果您有更多疑问,请告诉我。
感谢。