垂直样式
drawable中增加progress_vertical.xml
<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android = "http://schemas.android.com/apk/res/android"> <item android:id="@android:id/progress"> <clip android:clipOrientation = "vertical" android:drawable = "@drawable/progress1" android:gravity = "bottom"> </clip> </item> </layer-list>
ProgressBar
<ProgressBar android:id="@+id/pbPic" style="@android:style/Widget.ProgressBar.Horizontal" android:layout_width="195dp" android:layout_height="127dp" android:background="@drawable/progress2" android:layout_centerInParent="true" android:max="100" android:progress="0" android:progressDrawable="@drawable/progress_vertical" />
调用
ProgressBar pb; void initProgress(){ if(pb != null) return; pb = (ProgressBar) findViewById(R.id.pbPic); new Thread(){ public void run() { try { int step = 0; int result = 0; while (true) { result = step * 5; if(result >= 100){ pb.setProgress(100); step = 0; result = 0; Thread.sleep(200); pb.setProgress(0); Thread.sleep(200); }else{ pb.setProgress(result); Thread.sleep(50); //休息50毫秒 } step++; } } catch (InterruptedException e) { e.printStackTrace(); } } }.start(); }