0
我在我的Android遊戲中遇到問題。我使用AsyncTask,並在onProgressUpdate中從活動類調用靜態方法。事情是這樣的:Android onProgressUpdate只能調用靜態方法嗎?
protected void onProgressUpdate(Message... values) {
super.onProgressUpdate(values);
OnlineGameActivity.refreshGame(values[0]);
}
然後在onlineGameActivity方法refreshGame我需要調用哪些upate例如遊戲狀態的一些其他非靜態方法:
public class OnlineGameActivity extends Activity {
public static void refreshGame(Message message) {
switch (message.getType()) {
case 1:
methode1();
break;
case 2:
methode2();
break;
case 3:
methode3();
break;
}
有可能做這樣的事情?
要麼你需要做的方法,你在呼喚靜態的,或者以某種方式添加引用實例,並使其靜態,或者將實例傳遞給方法在'onProgressUpdate'方法中的對象 – Austin
你不能在那裏使用'static'方法,因爲你不能對它們做任何有用的事情。你需要引用啓動這個'AsyncTask'的Activity。例如,如果您的任務在活動外部定義,例如http://stackoverflow.com/a/5523637 – zapl