如何在android应用程序中调试textwatcher?
我正在开发一个如何在android应用程序中调试textwatcher?,android,debugging,android-textwatcher,Android,Debugging,Android Textwatcher,我正在开发一个多自动完成文本视图mactv。我的目的是在打字时阅读mactv中添加的每个单词,并用这个单词做一些事情。为此,每当在mactv中键入空格时,我都使用TextWatcher读取最后一个单词。此操作的逻辑在PostTextChanged()方法中实现。但它不能正常工作。因此,我想在mactv中输入文本时调试应用程序,但在第一次调用posterextchanged()方法后,应用程序崩溃。 我已经在mainActivity和present Activity的setContentView(
多自动完成文本视图mactv
。我的目的是在打字时阅读mactv
中添加的每个单词,并用这个单词做一些事情。为此,每当在mactv
中键入空格时,我都使用TextWatcher读取最后一个单词。此操作的逻辑在PostTextChanged()
方法中实现。但它不能正常工作。因此,我想在mactv
中输入文本时调试应用程序,但在第一次调用posterextchanged()
方法后,应用程序崩溃。
我已经在mainActivity和present Activity的setContentView()方法之前设置了断点
那么,有没有一种方法可以调试这个TextWatcher,或者通过其他方式达到这个目的
注意:我已经创建了一个自定义标记器,当在自动完成列表中单击项目时,该标记器只放置空格。
并且应用程序在正常运行期间不会崩溃
mactv.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) {
String text = mactv.getText().toString();
int lastIndex = text.length()-1;
int i;
if(text.length()>0 && text.charAt(lastIndex) == ' '){
i = lastIndex;
while(i>0 && text.charAt(i)!=' ')
i--;
String word = text.subSequence(i, text.length()).toString();
addTagInContainer(word);
}
}
});
我将从日志和/或断点开始。我想你会很快看到发生了什么。谢谢@codeMagic的评论,但我的目的是能够将调试器与TextWatcher
一起使用,或者至少知道是否有办法这样做。