如何将当前值与TextWatcher中的旧值进行比较



我正在呈现数据库中的值,并将这些值放置在相应的EditText字段中,因此通常允许用户修改其保存数据。

我的页面上有一个保存按钮,默认情况下禁用了。仅在真正修改EditText字段时才能启用它。

与数据库值进行比较时,

  1. 如果更改了编辑文本值 - 修改了
  2. 如果编辑EditText值但没有更改(用户可以复制粘贴相同的值( - 未修改。

这是我的代码

EditText text1  = (EditText) findViewById(R.id.text1);
EditText text2  = (EditText) findViewById(R.id.text2);
EditText text3  = (EditText) findViewById(R.id.text3);
EditText text4  = (EditText) findViewById(R.id.text4);
EditText text5  = (EditText) findViewById(R.id.text5);
ArrayList<EditText> editTextList = new ArrayList();
editTextList.add(text1);
editTextList.add(text2);
editTextList.add(text3);
editTextList.add(text4);
editTextList.add(text5);
for(EditText e : editTextList)
  e.addTextChangedListener(textWatcher);
private TextWatcher textWatcher = new TextWatcher() {
public void afterTextChanged(Editable s){}
public void beforeTextChanged(CharSequence s, int start, int count, int 
after) {}
 public void onTextChanged(CharSequence s, int start, int before,int 
count) {}
};

有什么方法可以将数据库值与EditText中的当前给定值进行比较?

注意:

由于TextWatcher函数是所有EditText共有的,因此我想进行比较常见。

您必须用全局变量自己控制它。或反应性对象或使用数据框。

相关内容

  • 没有找到相关文章

最新更新