出现 java.lang.StackOverflowError 错误一般是由于死循环造成的,需要仔细的在代码中查找
private EditText jczq_bet_multiple;
public void onCreate(Bundle savedInstanceState){
jczq_bet_multiple.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) {
disPlayBetInfo();//不允许在disPlayBetInfo()里执行jczq_bet_multiple.setText(),可能会死循环造成StackOverflowError
}
});
}
public void disPlayBetInfo() {
//jczq_bet_multiple.setText("hello");不能在这里调用
}
本文介绍了一种在Java应用程序中避免StackOverflowError的方法。通过一个具体的代码实例,展示了如何防止因无限递归调用导致的堆栈溢出错误。特别强调了在监听器回调中避免不当操作的重要性。

被折叠的 条评论
为什么被折叠?



