1

ユーザーが「スペース」を入力したときに onTextChanged クラスを読み取って、 EditText ビューをクリアできるようにします。問題は、スペース バーを押しても何も起こらないことです。誰かが私が間違っていることを知っていますか? 私のプログラムはクラッシュせず、何もしません。

 public void onTextChanged(CharSequence s, int start, int before,
                    int count) {
                SS.setText(s);
                if (s.equals("r")) {
                    SS.setText(s);
                    et.setText(" ");
                }
            }

                @Override
                public void beforeTextChanged(CharSequence s, int start, int count,
                        int after) {
                    et.setTextColor(Color.parseColor("#000000"));

                }

                @Override
                public void afterTextChanged(final Editable s) {
                    // cancel the previous search if any

                    // toasted();
                    if (delayedAction != null) {
                        handler.removeCallbacks(delayedAction);
                    }
                    // toasted();

                    // define a new search
                    delayedAction = new Runnable() {

                        @Override
                        public void run() {
                            // start your search
                            // toasted();

                            // if (s.toString().equals(current)) {
                            // // toasted(); <== Here is where it needs to work
                            // // Toast.LENGTH_LONG).show();
                            // }

                            et.setTextColor(Color.parseColor("#C0C0C0"));
                            toasted();
                            tv.setText(et.getText().toString());
                            tv.setTextColor(Color.parseColor("#66CC66"));
                            et.setText("");
                        }

                    };
4

2 に答える 2

1

s.equals(" ")の代わりにする必要がありますs.equals(' ')

于 2012-08-12T02:29:10.867 に答える
0

あなたはそれを試すことができます。

Pattern pattern = Pattern.compile("\\s");
Matcher matcher = pattern.matcher(s);
boolean found = matcher.find();
于 2012-08-12T05:27:55.457 に答える