時間がかかる処理を行うときにProgressDialogでくるくるしている最中に画面を回転させるとActivityが破棄されて云々に対応。
くるくるしている最中に回転しても意味がないので、画面固定→くるくる→固定解除するのが簡単。
1.ProgressDialogを表示する前に画面を固定する。
1 2 |
//現在の向きで固定 setRequestedOrientation(getResources().getConfiguration().orientation); |
2.くるくるさせつつ、処理を行う。
3.ProgressDialogをdismissした後に画面固定を解除(傾きによって回転)する。
1 |
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED); |