利用图片的填充属性来制作进度条
大概原理就是定义了imageView 然后他的背景是一个bitmap ,这个位图的模式是重复模式,
自动填充的,你img有多宽它就填多宽,最后你在外面动态调整img的宽度,就会自动填充
看起来就是进度条那样一直往前走:
位图:图片自己找一个主要是那个模式要是repeat
在布局中的imageview用此位图来填充背景:
初始状态设置宽度为0,在程序里面在动态调节img 的宽度
主程序里面的控制宽度的代码:LayoutParams params = (LayoutParams) image.getLayoutParams();new Thread() {public void run() {Looper.prepare();for (int i = 0; i < 10; i++) { //do something handler.sendEmptyMessage(0);}handler.sendEmptyMessage(1);}}.start();Handler handler = new Handler() {public void handleMessage(Message msg) { switch (msg.what) { case 0: params.width += eachAddLength; image.setLayoutParams(params); break; case 1: //do something break; }}};
上面有好几处没有写明,能看懂就行,eachAddLength是每次要增加的
进度条的长度, handler.sendEmptyMessage(0);前面应该加上你要处理数据的方法:
比如读取一个文件夹,比如加载一个联系人之类的,for循环的次数也是你自己来控制
最后 handler.sendEmptyMessage(1);是来说明数据加载完了,现在该干嘛干嘛!要么
让dialog.dismiss 要么让页面跳转。do everything you want!~