gpt4 book ai didi

android - 如何在 ListView 中的 EditText 中进行验证?

转载 作者:太空狗 更新时间:2023-10-29 16:23:11 25 4
gpt4 key购买 nike

我在 onFocusChangeListner 的 ListView 中验证 Edittext 时遇到问题。

我的界面是这样的

MeterName Previous CurrentReading
Meter1 100 Here i want to type current reading

当我输入当前读数时,它会与之前的读数进行比较。 Current Reading 不能小于 Previous。如果它小于以前的那么我想提醒用户并且焦点在同一个 EditBox 上。

我的代码在这里:

 public void onFocusChange(View v, boolean hasFocus) {

try {
Previous_Reading = getArray_Meter_Reading.getJSONObject(holder.ref)
.getString("PrevMeterReading").toString();
Cumulative = getArray_Meter_Reading
.getJSONObject(holder.ref).getString("Cumulative")
.toString();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}



if(!hasFocus){

int Current=Integer.valueOf(holder.adp_Current.getText().toString());
Previous=Integer.parseInt(Previous_Reading);
if(Current< Previous ){
AlertDialog.Builder builder = new AlertDialog.Builder(
context);
builder.setTitle("WARNING");
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setMessage("Please Enter UserName");
builder.setPositiveButton("ok",
new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog,
int which) {

// Caption.requestFocus();

}
});

AlertDialog diag = builder.create();
diag.show();
}

}

} });

使用这段代码,当我开始在 EditBox 中输入时,所有字符都会显示警报,如果之前的字符是 600,我输入的是 600,而我输入的当前读数是 6,它会显示 alertdialog 然后5 再次 alertdialog 直到它大于之前的值。

当我点击 EditText 时 hasFocus 为真,当我输入任何数字时说 5 焦点变为假。

任何人都可以通过示例代码告诉我如何对此进行验证吗?

最佳答案

最好在 textwatcher 上使用您的编辑文本。

 edittext.addTextChangedListener(new TextWatcher() {

@Override
public void onTextChanged(CharSequence s, int start, int before, int count)
{
if(Integer.valueOf(holder.adp_Current.getText().toString()<Integer.parseInt(Previous_Reading)){
edittext.seterror("your error message");

}

@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub

}

@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub

}
});

关于android - 如何在 ListView 中的 EditText 中进行验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9339773/

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