Android 数字输入类型的 EditText:增量不起作用
Android EditText with numeric input type : the increment doesn't work
我有一个 EditText
edit_text 的数字输入类型,我想在按下按钮“+”时增加其中的变量。我尝试了这段代码,但没有用。
我得到一个FATAL EXCEPTION
。
@Override
public void onClick(View v) {
String value = edit_text.getText().toString();
int value_int = Integer.parseInt(value);
int incremento = value_int +1 ;
edit_text.setText(incremento);
}
edit_text.setText(incremento);
这一行告诉你错误。将其更改为。
edit_text.setText(String.valueOf(incremento));
原因是你不能直接在setText()
中放入一个int
,因为它试图找到一个id
对应于你int
的资源,但失败了。
更新这个..
edit_text.setText(""+incremento);
因为 setText() 需要字符串作为参数而不是整数...因此将 "" 与整数连接 return 最终需要的字符串
这个怎么样:
@Override
public void onClick(View v) {
String value=edit_text.getText().toString();
int value_int=Integer.parseInt(value);
int incremento=value_int +1 ;
edit_text.setText(incremento.toString());
}
});
一些注意事项:
- 根据输入类型,数字应与 int/integer 一起使用,小数应与 double/Double 一起使用。您必须注意转换 string/double/int,因为有时可能无法进行转换,因此您需要处理这种情况。
您可以通过两种可能的方式将整数转换为字符串:
- edit_text.setText(递增 + "");
- edit_text.setText(String.valueOf(增量));
我有一个 EditText
edit_text 的数字输入类型,我想在按下按钮“+”时增加其中的变量。我尝试了这段代码,但没有用。
我得到一个FATAL EXCEPTION
。
@Override
public void onClick(View v) {
String value = edit_text.getText().toString();
int value_int = Integer.parseInt(value);
int incremento = value_int +1 ;
edit_text.setText(incremento);
}
edit_text.setText(incremento);
这一行告诉你错误。将其更改为。
edit_text.setText(String.valueOf(incremento));
原因是你不能直接在setText()
中放入一个int
,因为它试图找到一个id
对应于你int
的资源,但失败了。
更新这个..
edit_text.setText(""+incremento);
因为 setText() 需要字符串作为参数而不是整数...因此将 "" 与整数连接 return 最终需要的字符串
这个怎么样:
@Override
public void onClick(View v) {
String value=edit_text.getText().toString();
int value_int=Integer.parseInt(value);
int incremento=value_int +1 ;
edit_text.setText(incremento.toString());
}
});
一些注意事项:
- 根据输入类型,数字应与 int/integer 一起使用,小数应与 double/Double 一起使用。您必须注意转换 string/double/int,因为有时可能无法进行转换,因此您需要处理这种情况。
您可以通过两种可能的方式将整数转换为字符串:
- edit_text.setText(递增 + "");
- edit_text.setText(String.valueOf(增量));