我想显示loadingActivity
,而“activity1”正在执行一些代码(工作),之后再显示activity1。但是,如果我不想再次启动activity1,则仅在doSomeStuff
结束时切换其布局。谢谢。
活性1
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Intent myIntent = new Intent(getApplicationContext(), loadingActivity.class);
startActivityForResult(myIntent, 0);
//Do some stuff while loadingActivity is showed
doSomeStuff()
//here I want to show again this activity and hide loading one
loadingActivity
public class loadingActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
setContentView(R.layout.loading);
}
答案 0 :(得分:2)
为此,您应该使用ProgressDialog
,这样您就可以轻松显示加载指示器,一旦完成工作,您就可以轻松删除它。下面的代码应该适合您。
显示对话框:
ProgressDialog dialog = new ProgressDialog(YourActivityClass.this);
dialog.setMessage("Loading Activity...");
dialog.show();
//Do your long running work here
解雇对话框:
dialog.dismiss();
如果要以不同方法显示和关闭对话框,可以将对话框设置为类级别变量。
另外,从查看代码开始,如果您在后台线程上没有进行长时间的工作,则可能会阻止活动加载。如果不将工作卸载到后台线程,则无法在onCreate内部进行长时间的运行。要在Android中轻松进行线程处理,您应该使用AsyncTask类。