我修改下面的代碼在我的活動可運行:靜態的活動
new Handler().postDelayed(new Runnable() {
public void run() {
txtStatus.setText("hello");
}
}, 1000);
到:
static Runnable myRunnable = new Runnable() {
public void run() {
txtStatus.setText("hello");
};
new Handler().postDelayed(myRunnable, 1000);
這顯然是行不通的,因爲我們引用非靜態變量。
這不起作用或者:
public void setText() {
txtStatus.setText("hello");
}
static Runnable myRunnable = new Runnable() {
public void run() {
setText(); // doesn't work
MyActivity.this.setText(); // still doesn't work
};
new Handler().postDelayed(myRunnable, 1000);
因此,如何將我的最初的例子改寫爲使用靜態類,而不是一個匿名內部類的(以避免內存泄漏的可能)?
在您以前的問題中標記正確的答案可能是一個好主意。 –