关于安卓启动界面的问题

 我来答
泥远赵天真
2019-02-24 · TA获得超过3889个赞
知道大有可为答主
回答量:3158
采纳率:33%
帮助的人:444万
展开全部
首先呢,你贴出来的这段代码,一般是用于一个程序启动的时候进行初始化,初始化的不是界面而是程序配置和数据库相关之类的。这是对一个程序的初始化。

再说楼主的需求,你是想对一个界面进行预加载,对吧?那肯定就不能用这种intent的方式,你可以这样去实现:
1.
最外层布局用RelativeLayout,用于加载你的主界面,同时也放置一个启动界面,大小都是填满容器,但开始只显示启动界面。
2.
在Activity的onCreate里利用AsyncTask开启一个线程,在doInBackground()方法里加载你主界面初始化需要的数据(比如从数据库取数据,过滤数据等),但这是后台线程,不要执行跟ui有关的操作;在onPostExecute()方法里,执行你对主界面的初始化,这里相当于是runOnUiThread一样了,可以执行UI相关的操作,类似findViews()\addListener等操作可以这里执行;执行完后把启动界面设为不可见,同时显示主界面就好了。
提醒一下,如果启动界面和主界面是不同的activity,你是没办法在启动界面的activity里就初始化主界面的Ui的,还有种思路:如果觉得主界面加载太慢,也不一定要过渡的这种启动界面,可以像上面这样用线程去加载复杂的界面,先简单显示了最初的界面再启动AsyncTask。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式