0
我有两个活动A和B.活动A将启动活动B.我做了一些UI初始化,数据库查询和本地存储读取操作在活动B的onCreate。我的问题是活动B需要很长时间可见。那是因为onCreate中有这样的操作吗?我希望至少我的UI更改可见。请指导我增加活动加载时间
我有两个活动A和B.活动A将启动活动B.我做了一些UI初始化,数据库查询和本地存储读取操作在活动B的onCreate。我的问题是活动B需要很长时间可见。那是因为onCreate中有这样的操作吗?我希望至少我的UI更改可见。请指导我增加活动加载时间
在您的onCreate执行繁重的任务在不同的线程/处理程序/ AsyncTask。例如
public void onCreate(Bundle b){
super.onCreate(b);
setContentView(R.layout.yourlayout);
// do other gui initialization
Handler h = new Handler();
h.post(new Runnable{
public void run(){
// do your heave tasks
}
});
}
是的。您可以在其他线程中运行繁重的操作,然后更新UI。 – Kanth 2013-05-08 16:07:43
谢谢。我应该在onCreate和其他onResume活动状态下进行UI更改吗?用户可以看到哪些状态活动? – vignesh 2013-05-08 16:11:37
否。清楚地检查活动的生命周期。 onResume()在屏幕变得可见之前被调用。所以,即使你在onResume()中执行繁重的操作,也不会有任何区别。请按照下面的答案或使用asynctask。你可以有选择来做到这一点或创建自己的线程。 – Kanth 2013-05-08 16:20:23