계속 진행하기 전에 다른 스레드가 완료 될 때까지 현재 스레드를 강제로 대기시킬 수 있습니까?메인 스레드를 계속 실행하기 전에 DialogActivity가 반환되기를 기다리는 중
내 프로그램에서 사용자가 AlertDialog
에서 MODE
을 선택합니다. 게임 플레이에 중요한 구성을 보유하고 있기 때문에 계속하기 전에 프로그램 실행을 중단하고 싶습니다.
new AlertDialog.Builder(this)
.setItems(R.array.game_modes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case 0:
setMode(TRAINING_MODE);
case 1:
setMode(QUIZ_MODE);
default:
setMode(TRAINING_MODE);
break;
}
//continue loading the rest of onCreate();
contineOnCreate();
}
})
.create().show();
가능한 경우 누구나 해결책을 제시 할 수 있습니까?
정확히 무엇이 문제입니까? 사용자가 무언가를 클릭하는 경우에만 contineOnCreate() 메서드를 호출해야합니다. 그래서 작동하지 않는 것은 무엇입니까? – RoflcoptrException
아니요 - 모드가 선택되기 전에 onStart() 콜백이로드되기 때문에 Alert가 자체 스레드에로드되므로 기본 스레드가 보통 – jax
으로로드를 계속할 수 있으며 이러한 것들은 onStart()에 있어야합니다 이 호출은 contineOnCreate()로 이동합니까? – RoflcoptrException