2012-01-31 3 views
13

Возможно ли изменить диалог прогресса стиля ProgressBar. Если да, то как я могу это сделать?Изменить стиль ProgressDialog

+0

какой стиль вы хотите .... ??? –

+0

Довольно легко сделать это, и код можно найти на akkilis

+0

Благодарим за ваши быстрые ответы, я просто хочу изменить значение по умолчанию ProgressBar анимация с моей пользовательской анимацией. – Aram

ответ

5

Вы можете стилизовать свой прогресс диалоговое этот путь: создать Drawable файл с вашей кольцевой формы (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(); 
Смежные вопросы