我的应用程序中有两个编辑文本字段,如果我在第一个编辑文本中输入50,那么在第二个编辑文本中,当用户在第二个编辑文本中输入值时,我想允许输入小于50的值,我想向用户发出警告,如果它大于第一次编辑文本值。 我怎么能这样做,意味着当我输入值时我需要检查并显示警报我不想在按任何其他字段时显示警报... 例如:如果用户输入35,则在字段1中 在field2中,他只输入小于35的值...
答案 0 :(得分:1)
初始化两个edittext,让我们调用它们myEditText1
和myEditText2
setOnTextChangedListener
这样的东西,这里是如何使用它(这是伪代码)
myEditText2.setOnTextChangedListener(new OnTextChangedListener(){
@Override
public void OnTextChanged(View v)
{
int i = Integer.valueOf(myEditText1.getText().toString());
int j = Integer.valueOf(myEditText2.getText().toString());
if(j >= i)
{
myEditText2.setText(""); //this automatically sets the editText2 field back to empty
}
}
});
这将只允许用户输入低于第一个编辑文本中的值的数值。
但您需要确保两个editText字段的inputType:
都设置为数字。
答案 1 :(得分:1)
您可以比较第二个编辑文本的onFocusChange数字。
editText2.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if(!hasFocus) {
// here place code for comparison and calling alert
}
}
});