如何在Activity界面显示后进行一些初始化操作?

feibob 2012-03-26 02:49:59
如题,由于自己的程序在开始时会有一些较长时间的初始化工作,所以做了个初始化界面,在界面上有一个进度条,想在程序启动时就显示此Activity,然后通过控制进度条来显示初始化进度,试着放在了Activity的onCreate, onResume, onStar方法中,结果都是进度完成后Activity才显示出来,请指点!
...全文
519 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
feibob 2012-03-27
  • 打赏
  • 举报
回复
非常感谢楼上各位,但分数有限,大家意思意思吧:)
leer168 2012-03-26
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 zhongyuanceshi 的回复:]

setContentView(R.layout.install);这条语句在 new Thread()前面,不是先显示界面在进度条吗?
[/Quote]

线程要更新的组件要先Layout到界面上,也就是setContentView(R.layout.install);
zhongyuanceshi 2012-03-26
  • 打赏
  • 举报
回复
setContentView(R.layout.install);这条语句在 new Thread()前面,不是先显示界面在进度条吗?
octopus666 2012-03-26
  • 打赏
  • 举报
回复


protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.install);
progressbar = (ProgressBar)findViewById(R.id.progressBar1);
showtext = (TextView)findViewById(R.id.textView1);
new Thread(){ //创建一条线程跑显示进度条
public void run(){


UpdateProgress(2);
try {
sleep(2000);
finish();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


}
}.start();
}

麦田捕手 2012-03-26
  • 打赏
  • 举报
回复
需要开一个线程
傲慢的上校 2012-03-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 himi_ 的回复:]

使用多线程来初始化,再配合handler来更新UI界面。
随便搜索一下handler的资料,我这里就不贴了。
[/Quote]使用1楼说的这个方法就行,简单方便。
feibob 2012-03-26
  • 打赏
  • 举报
回复
非常感谢,先学习去,回来给各位加分:)
dinjay 2012-03-26
  • 打赏
  • 举报
回复
这个也容易,oncreate的时候先启动一个线程或者异步任务去加载数据,然后数据加载完了发handler通知主线程UI更新。
可以Google一下 “android 异步任务”,基本都是下载什么的例子,带进度条的。
ihrthk 2012-03-26
  • 打赏
  • 举报
回复
用2楼的方法。
小笨熊 2012-03-26
  • 打赏
  • 举报
回复
lz的意思是启动时只显示布局而已,数据方面的要通过进度条加载吗?
himi_ 2012-03-26
  • 打赏
  • 举报
回复
使用多线程来初始化,再配合handler来更新UI界面。
随便搜索一下handler的资料,我这里就不贴了。

80,354

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧