Pracuję nad aplikacją, w której chcę pokazać ProgressBar
, ale chcę zastąpić domyślnego Androida ProgressBar
.
Jak więc mogę dostosować ProgressBar
?
Czy potrzebuję do tego grafiki i animacji?
Przeczytałem następujący post, ale nie mogłem go uruchomić:
android
android-progressbar
Shubham Suryawanshi
źródło
źródło
Odpowiedzi:
Dostosowanie
ProgressBar
wymaga zdefiniowania atrybutu lub właściwości tła i postępu paska postępu.Utwórz plik XML o nazwie
customprogressbar.xml
w swoimres->drawable
folderze:custom_progressbar.xml
Teraz musisz ustawić
progressDrawable
właściwość wcustomprogressbar.xml
(do rysowania)Możesz to zrobić w pliku XML lub w działaniu (w czasie wykonywania).
Wykonaj następujące czynności w swoim kodzie XML:
W czasie wykonywania wykonaj następujące czynności
Edycja: poprawiony układ xml
źródło
W przypadku
ProgressBar
tak złożonychużywać
ClipDrawable
.ZA
Drawable
który przycina innyDrawable
na podstawieDrawable
aktualnej wartości tego poziomu. Możesz kontrolować, jak bardzo dzieckoDrawable
jest przycinane pod względem szerokości i wysokości na podstawie poziomu, a także grawitację, aby kontrolować, gdzie jest umieszczone w ogólnym pojemniku.Most often used to implement things like progress bars
, zwiększając poziom rysunku za pomocąsetLevel()
.Użyłem tych dwóch obrazów, aby to zrobić
CustomProgressBar
.scall.png
ballon_progress.png
MainActivity.java
activity_main.xml
clip_source.xml
W przypadku złożonego
HorizontalProgressBar
wystarczy zmienić plik clip_source.xmlcliporientation
w ten sposób,Możesz pobrać pełne demo stąd .
źródło
w twoim xml
A w
res/values/styles.xml
:I
custom_progress_bar_horizontal
jest plikiem XML przechowywanym w folderze do rysowania, który definiuje niestandardowy pasek postępu. Więcej szczegółów znajdziesz na tym blogu .Mam nadzieję, że to Ci pomoże.
źródło
Dostosowanie koloru paska postępu, zwłaszcza w przypadku typu spinner, wymaga pliku xml i kodów inicjujących w odpowiednich plikach java.
Utwórz plik xml i nazwij go progressbar.xml
Użyj poniższego kodu, aby uzyskać pokrętło w różnych oczekiwanych kolorach, tutaj używamy kodu szesnastkowego, aby wyświetlić pokrętło w kolorze niebieskim.
źródło
Istnieją dwa rodzaje pasków postępu zwane paskiem postępu określanym (o ustalonym czasie trwania) i paskiem postępu nieokreślonego (o nieznanym czasie trwania).
Obiekty do rysowania dla obu typów pasków postępu można dostosować, definiując do rysowania jako zasób XML. Więcej informacji na temat stylów paska postępu i dostosowywania można znaleźć pod adresem http://www.zoftino.com/android-progressbar-and-custom-progressbar-examples .
Dostosowywanie stałego lub poziomego paska postępu:
Poniżej XML jest dostępny zasób umożliwiający dostosowanie poziomego paska postępu.
Dostosowywanie nieokreślonego paska postępu
Poniżej XML jest dostępny zasób do dostosowywania okrągłego paska postępu.
źródło
Tworzenie niestandardowego paska postępu, takiego jak hotstar.
activity_main.xml
custom_progress_bar.xml
źródło
Najprostszy sposób na dostosowanie paska postępu w systemie Android:
Zainicjuj i pokaż okno dialogowe:
Utwórz metodę:
Utwórz układ XML:
Utwórz shape progresscustombg.xml i umieść res / drawable:
źródło
Do korzystania z niestandardowych rysunków:
(dodaj pod res / drawable
progress.xml
).my_drawable
może być xml, pngNastępnie w swoim układzie użyj
źródło
Jeśli chcesz to zrobić w kodzie, oto przykład:
Korzystanie z TextView umożliwia zmianę koloru, rozmiaru i czcionki tekstu. W przeciwnym razie możesz po prostu wywołać setMessage (), jak zwykle.
źródło