如何在addTextChangedListener中等待一秒?以下代碼給出了以下錯誤:E/AndroidRuntime(1003):java.lang.IllegalMonitorStateException:線程在wait()之前沒有鎖定對象如何鎖定對象/成爲顯示器的所有者(Android)
在Android的參考方法wait()中,Object說:只能由擁有該對象監視器的線程調用;請參閱notify()有關線程如何成爲監視器的所有者的信息。
而在對象的notify()說: 此方法只能由擁有此對象的監視器的線程調用。線程成爲對象監視器的所有者 •通過執行該對象的同步方法; •通過執行同步對象的同步語句的主體; •如果對象類型爲Class,則執行同步靜態方法。我在這裏
一個問題:我不明白...
我應該怎麼做這裏「暫停」第二?
public class Spel extends FragmentActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.spel);
editText2 = (EditText) findViewById(R.id.editText2);
editText2.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start,
int before, int count) {
if (before==0) {
String v = s.toString();
if (v.equals("0") || v.equals("1") || v.equals("2") || v.equals("3") || v.equals("4") || v.equals("5") || v.equals("6") || v.equals("7") || v.equals("8") || v.equals("9")) {
try {
wait(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
editText1.requestFocus();
editText1.setText(null);
editText2.setText(null);
int baanWorpScore = Integer.parseInt(v);
}
else {
// blijf wachten op goede invoer
editText2.setText(null);
}
}
}
});
sleep()現在對我來說很好,謝謝! – user1837293