我正在尝试从编辑文本字段创建一个布尔值。
我已经将其转换为字符串,但需要根据答案制作布尔值。我想将正确答案分配为 1,将 2 指定为错误答案。如果您能给我一个提示,如何确保他们只输入 1 或 2 个,那就太好了!
这是我到目前为止所拥有的:
public void EnterAnswer(Editable insertAnswer) {
EditText enterAnswer = (EditText) findViewById(R.id.editText_question_six);
String answer = enterAnswer.getText().toString().trim();
}
首先,使用EditText,实际上无法指定用户可以输入的值。最好的方法是通过将输入类型设置为"数字"来使用 input type
属性,如下所示。这样,用户只能输入数字。
android:inputType="number"
您还可以使用 EditText 的 setError(( 方法,在用户输入的值既不是 0 也不是 1 时显示错误。如下所示:
if(!(editText.getText().toString().equals("0") || editText.getText().toString().equals("1"))){
editText.setError("Wrong input, you can only input 0 or 1");
}
请遵循以下过程:
- 从文本视图中获取文本
- 检查文本是一还是二
- 根据上述结果为布尔变量赋值。
插图:
public boolean EnterAnswer(Editable answerView){
boolean result = false;
String answer = answerView.getText().toString().trim();
if(answer.equals("1")){
result = true;
}
return result;
}
按照上述逻辑,仅当答案(来自 EditText(为 1 时,该方法才会返回 true。
我希望这有帮助...祝您编码愉快!