在调用另一个包的函数时,不知道要执行多久,想实现简单的转圈圈那种ProgressBar来显示等待progressBar = (ProgressBar).findViewById(R.id.progress_testnow);
progressBar.setVisibility(View.VISIBLE);
String testRt="";
if(testFunc()){
    testRt="测试成功";
}else{
    testRt="测试失败";
}
Toast.makeText(this, testRt,Toast.LENGTH_SHORT).show();
progressBar.setVisibility(View.GONE);这样progressBar根本不显示,好像progressBar.setVisibility(View.GONE)这句在调用之前就执行了
关键是也不能动另一个包的testFunc(),那是别人写的。有请各位达人指导一下。progressbarandroid

解决方案 »

  1.   

    progressBar.setVisibility(View.VISIBLE);
    …………
    progressBar.setVisibility(View.GONE);这二句话连在一起,progressBar当然不显示,你整个botton测一下.
      

  2.   

    testFunc()就是那个要等待长时间执行的东东,按理说它要返回后才会执行progressBar.setVisibility(View.GONE)这人啊。
    其实我看了别人说用线程,但是线程我不会搞,因为其它的例子都是在线程中自己写的那个调用方法,而不是调别人写的方法
      

  3.   

    dialog = new ProgressDialog(this);
    dialog.setMessage("正在加载文件,请稍后...");
    dialog.setIndeterminate(true);
    dialog.setCancelable(false);
    用这一段代码就OK了
      

  4.   

    调用函数时,dialog.show(); 结束后dialog.dismiss(); 即可