Wie ein ProgressBar programmatisch erstellen?
-
30-09-2019 - |
Frage
Meine Anwendung benötigt eine kleine ProgressBar
programmatisch zu erstellen.
ProgressBar
kein Verfahren haben den Stil einzustellen (Ich möchte eine kleine
ProgressBar
). Der Konstruktor kann eine AttributeSet
nehmen, aber es ist ein
Schnittstelle und verlangt von mir eine Reihe von Funktionen zu implementieren. Gibt es einen Weg
die ProgressBar
auf einen kleinen Stil zu setzen? (Ich kann nicht XML verwenden, um zu erstellen
ProgressBar
.)
Lösung
Die meiste Zeit, wenn Sie eine AttributeSet
bieten manuell müssen Sie einen von Android verwenden. Zum Glück haben sie das Attribut Satz ausgesetzt, die eine kleine Statusleiste beschreibt. Verwenden Sie diesen Code:
progressBar = new ProgressBar(activity, null, android.R.attr.progressBarStyleSmall);
Andere Tipps
Erstellen Sie eine Layout-XML-Datei in res / Layout-Verzeichnis mit den gewünschten Fortschrittsbalken containig alle Attribute, die Sie brauchen:
<?xml version="1.0" encoding="utf-8"?>
<ProgressBar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" ... />
Als nächstes werden in der Aktivitätsklasse Du ProgressBar Objekt aus diesem Layout erstellen:
LayoutInflater inflater = getLayoutInflater();
ProgressBar bar = (ProgressBar ) inflater.inflate(R.layout.small_progress_bar, null);
wo R.layout.small_progress_bar Links zu Ihrem Layout XML-Datei.
Können Sie sich noch nicht XML-Datei verwenden?
Activity.java
progressBar = (ProgressBar) findViewById(R.id.progressbar);
`progressBar.setVisibility(View.VISIBLE);`// To Show ProgressBar
`progressBar.setVisibility(View.INVISIBLE);` //To Hide ProgressBar
Überprüfen Sie hier ProgressDialog ist deprecated.What ist die alternative eine benutzen?