2012-01-31 76 views
13

是否可以更改ProgressBar風格的進度對話框。如果是,那我該怎麼做呢?更改ProgressDialog風格

+0

你想要什麼樣的風格....? – 2012-01-31 09:22:11

+0

很容易做到這一點,代碼可以在 akkilis 2012-01-31 09:23:23

+0

感謝您的快速回復,我只是想更改默認ProgressBar動畫與我的自定義動畫。 – Aram 2012-01-31 09:27:48

回答

5

您可以風格你的進度對話框是這樣的: 創建您的戒指形狀的繪製文件(circular_progress_dialog.xml)

<rotate xmlns:android="http://schemas.android.com/apk/res/android" 
android:fromDegrees="270" 
android:toDegrees="270"> 
<shape 
    android:innerRadiusRatio="2.5" 
    android:shape="ring" 
    android:thickness="2dp" 
    android:useLevel="true"><!-- this line fixes the issue for lollipop api 21 --> 

    <gradient 
     android:angle="0" 
     android:endColor="@color/main_background" 
     android:startColor="@color/main_orange" 
     android:type="sweep" 
     android:useLevel="false" /> 
</shape> 
</rotate> 

一個風格的進度條

<style name="ProgressBar" parent="@android:style/Widget.ProgressBar"> 
    <item name="android:layout_centerHorizontal">true</item> 
    <item name="android:layout_centerVertical">true</item> 
    <item name="android:visibility">gone</item> 
    <item name="android:background">@color/transparency_pleca</item> 
    <item name="android:indeterminateDrawable">@drawable/circular_progress_dialog</item> 
</style> 

通知你的「 android:indeterminateDrawable「屬性

Yout可以創建一個ProgressDialog的實例並將您的樣式添加到

// create progressDialog 
final ProgressDialog myProgressDialog = new ProgressDialog(MyActivity.this); 
myProgressDialog.setProgressStyle(R.style.ProgressBar) 
myProgressDialog.show();