这是我的代码,我希望我的日志输出变为ABC,但它只是转到A和B.我从来没有实现过我自己的事件监听器,但我不知道什么是错的。关于如何使这项工作的任何想法?
public class MyActivity extends Activity {
...
OnCompletedEvent listener;
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
}
public void ButtonPressed (View view){
Log.d("LOG","A");
longRunningTask();
listener = new OnFinishedValidatingListener() {
@Override
public void onFinished() {
// TODO Auto-generated method stub
afterFinished();
}
};
}
public void longRunningTask(){
...
Log.d("LOG", "B");
}
public void afterFinished(){
...
Log.d("LOG", "C");
}
public static interface OnCompletedEvent {
public void onFinished();
}
}
答案 0 :(得分:1)
你不要在任何地方打电话,例如你需要在某处<{1}}
你也应该在“长时间运行的任务”之前创建你的监听器,以防你的任务快速完成,否则你的监听器将为空