Android进度条

1.进度条ProgressBar

1.1常用属性
      style="?android:attr/progressBarStyleHorizontal" 默认为圆形 的进度条
      android:progress="33"固定值
      android:max="100" 最大值

1.2线程休眠
      Thread.sleep(100);//抛异常
      SystemClock.sleep(100);//不会抛异常

编写一个监听事件,再写一个Thread方法,话不多说,上代码

private class MyThread extends Thread{
        @Override
        public void run() {
            super.run();
            while(true){
                try {
                    Thread.sleep(100);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                if(progress==100){
                    break;
                }
                progress++;
                tv_main_pb.setProgress(progress);
            }
        }
    }

 以上是没有数字的进度条,如果要显示百分比的话,必须要经过Handler。将TextView和%悬浮,需要用到网格布局,FrameLayout。Handler是用于线程之间的通信,比如:主线程与子线程。在线程中,子线程要经过Handler在进入主线程。那么三者传递的信息是HandManager重点代码:

public void ProgressBar(View view) {
        if(0==progress){
            new MyThread().start();
        }
    }
private class MyHandler extends Handler{
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            if(code==msg.what){
                progress++;
                tv_main_pb.setProgress(progress);
                tv_main_tv1.setText(progress+"%");
            }
        }
    }

线程注意事项:
      不能在主线程中执行耗时的操作,只能在子线程中操作
      另外,在子线程中不能操作主线程中的控件(ProgressBar除外)

补充两个小知识:

 1、toast弹框:相当于java中的alert()弹框。

 Toast toast=Toast.makeText(getApplicationContext(), "默认的Toast", Toast.LENGTH_SHORT).toast.show(); 

 第一个参数:当前的上下文环境。可用getApplicationContext()或this 

第二个参数:要显示的字符串。

第三个参数:显示的时间长短。Toast默认的有两个LENGTH_LONG(长)和LENGTH_SHORT(短),也可以使用毫秒如2000ms 

这样安卓里的弹框就ok了哦!!!
 2、imageview

两个属性:

android:src="@drawable/small_image"是放图片的

android:scaleType="fitCenter" scaleType是缩放类型。它的属性值有matrix   fitXY  fitStart   fitCenter  fitEnd  center   centerCrop  centerInside 。。。 默认是fitCenter

 

       注意事项:res下面的资源名不能使用大写字母,特别是图片资源中的图片的文件名,会造成R.java文件丢失,改正确后即可
               例如:smallImage.png错误,small_image.png正确

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

今日的学习就要此啦。在项目中运用进度条是可观的哦。

猜你喜欢

转载自blog.csdn.net/oydl_1234/article/details/82633496