第二个activity的onCreate时就启动进度条,然后等待数据加载完成再去dismiss
应该没有你说的那个问题,不知道你怎么创建的progressbar

解决方案 »

  1.   


    我是在没有进activity之前就启动进度条,而查询,传数据(Bundle),startactivity都是在runOnUiThread(new Runnable()
            {
              public void run()
              {
    //这里
    }
    }
      

  2.   

    注意,这种问题我也遇到过
    比如在函数里有如下代码:
    for(int i=0;i<100;i++){
      progress.setProgress(i);
    }就会出现要么不显示,要么就突然显示全部的进度,原因是因为你在循环的时候把UI(界面)线程给阻塞住了,当UI线程恢复的时候那个时候progress已经是100了,所以进度条突然就到100.还有就是在非UI线程里面不能对UI控件进行更新,只能通过Message来传递消息
      

  3.   


    这样肯定不行,你进度条是在activity1里面创建的吧,那跳到2的activity时,1里创建的控件会被2挡住,因为启动activity实际上是将activity置为最上层页面,所以在跳转的时候会出现被挡住的问题。
    我觉得你可以在2的onCreate时候再读取数据,同时创建进度条。这样进度条是依赖于2的,和1的activity没关系了就,如果1要传数据给2,那也能通过intent或者全局变量来实现。
      

  4.   

    用线程控制进度条的进度,当数据查询完毕后在线程中发message给handler,在handler中启动activity2。