检查OnTextChanged中的空EditText

Bla*_*... 0 java android

我是一名新手Android开发人员。.现在,我想检查我所有的EditText是否为空。.下面是我的方法:

public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) {
    // When user changed the Text
    Log.d("qwe", String.valueOf(inputSearchNama.getText()));
    if(String.valueOf(inputSearchNama.getText()).isEmpty() || String.valueOf(inputSearchJenis.getText()).isEmpty()  || String.valueOf(inputSearchMerk.getText()).isEmpty()) {
        DBHelper db = new DBHelper(getActivity());
        try {
            db.openDataBase();
        } catch (SQLException sqle) {
            throw sqle;
        }
        db.close();
        List<PriceList> getPrice = db.getSearchedPriceList(cs, String.valueOf(inputSearchMerk.getText()), String.valueOf(inputSearchJenis.getText()));
        ListAdapter myAdapter = new MyAdapter(getActivity(), getPrice);
        theListView.setAdapter(myAdapter);
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,当我尝试调试EditText时,它将显示qwe? [ 01-27 20:15:03.783 214:0x103 I/InputReader ]而不是空字符串。

meh*_*mak 6

您可以使用以下类似的方法,其中edtContent是一个EditText。如果你有多个EditText's定义的TextWatcher其他地方一样实例传递给所有的EditText情况下,作为一个TextChangedListener通过addTextChangedListener方法。

edtContent.addTextChangedListener(new TextWatcher() {

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {

        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }

        @Override
        public void afterTextChanged(Editable s) {
            if (TextUtils.isEmpty(s.toString().trim())) {

            } else {

            }
        }
    });
Run Code Online (Sandbox Code Playgroud)