0

我得到一个ResourceNotFoundException,我不知道为什么。

        mTextView.addTextChangedListener(new TextWatcher() {

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

        }

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

        }

        @Override
        public void afterTextChanged(Editable s) {
            if (s.length() > 0) {
                mTextView.setText(String.valueOf(s.charAt(s.length() - 1)));
                mTextView.setText("bla-bla");
            }
        }

    });

日志猫:

07-17 23:24:11.011: E/AndroidRuntime(15696): android.content.res.Resources$NotFoundException: String resource ID #0x74
07-17 23:24:11.011: E/AndroidRuntime(15696):    at android.content.res.Resources.getText(Resources.java:230)
07-17 23:24:11.011: E/AndroidRuntime(15696):    at android.widget.TextView.setText(TextView.java:3769)

当我setText不使用这种onTextChanged方法时,它工作正常。为什么我会收到此异常?

编辑

即使我能设法了解这个错误,我也会在 afterTextChange 方法中有 ifinite 循环。因为我正在用这种方法编辑文本。

这个问题与此有关所以 请帮助我。

4

1 回答 1

1

修复错误后,您还将在无限循环中运行,因为您在 text changed 中调用 settext

于 2013-07-17T19:56:40.040 回答