Benutzerdefinierte Titelleiste mit Fortschritt in Android

7

Ich habe mich gefragt, ob es einen Weg gibt, einen benutzerdefinierten Titel mit meinem eigenen Zeichensatz zu versehen - und dann einen Fortschrittsbalken in das Titellayout einzufügen, damit er wie der eingebaute Fortschrittsbalken funktioniert.

In meinem Code - Ich möchte in der Lage sein, setProgressBarIndeterminateVisibility(true) aufzurufen und den Fortschrittsbalken in meiner benutzerdefinierten Titelleiste anzeigen zu lassen.

Ist das möglich?

Ich habe mein Anwendungsthema so eingerichtet, dass es einen benutzerdefinierten Titel verwendet - aber ich weiß nicht, wie oder wo ich den Fortschrittsbalken in dieses Layout einfügen soll.

Vielen Dank im Voraus.

EDIT: Im Moment benutze ich mein eigenes Theme, das ungefähr so ​​aussieht:

%Vor%

Mit dem Titelhintergrundstil als:

%Vor%

Um allen eine bessere Idee zu geben - so etwas.

    
hwrdprkns 21.08.2010, 19:13
quelle

4 Antworten

3

Ich glaube, der einzige Weg, dies zu tun, ist die Verwendung Ihrer eigenen benutzerdefinierten Titelleiste. Sie könnten den Android-Code seit seiner Open Source überschreiben - aber das könnte eine schlechte Idee sein. Am besten ist es, ein Titelleistenlayout zu erstellen und <include /> in allen anderen Layouts zu erstellen. Vielleicht haben Sie eine Hilfsklasse, um die Fortschrittsanzeige ein- und auszublenden.

    
hwrdprkns 08.09.2010, 12:46
quelle
12

Fügen Sie diesen Code in onCreate vor jedem anderen Code hinzu:

%Vor%

Zum Ein- / Ausschalten verwenden Sie

%Vor%

Ich habe dies in einer Login-Aktivität verwendet, mein Problem ist, dass ich den Großteil der Login-Async ausfühle, so dass ich Probleme beim Aktualisieren der Benutzeroberfläche habe. Aber ich bekomme die kreisförmige Fortschrittsanimation zur Anzeige.

Ich arbeite mit einer TabActivity, die von einem asynchronen Aufruf innerhalb eines Aktivitätsintervalls aktualisiert wird, das von der TabActivity gestartet wurde. Ich musste die "requestWind ...." Zeilen sowohl in die TabActivity als auch in die aufgerufene Activity setzen. Auch ich habe festgestellt, dass mit setProgress nicht viel gemacht, aber die Spinner Animation "drehte" die ganze Zeit, so dass ich glücklich bin.

    
Jim 19.10.2010 12:42
quelle
4

Hier ist ein großartiges Beispiel für die Implementierung einer benutzerdefinierten Titelleiste mit einer Fortschrittsanzeige:

Ссылка

Meine Lösung besteht darin, über eine ActivityHelper-Klasse zu verfügen, die die Aktivität erweitert und diese sowie eine Methode zum Aktivieren oder Deaktivieren der Fortschrittsleiste enthält, und diese Klasse dann von jeder meiner Aktivitäten erweitern.

    
FrederickCook 08.09.2010 15:13
quelle
0

In neueren Versionen funktioniert die Technik von requestWindowFeature nicht. Eine bessere Option wäre, die von Google bereitgestellte v7.widget.toolbar zu verwenden. Der folgende Link enthält detaillierte Informationen zur Verwendung.

Einrichten der Aktionsleiste

Ссылка

    
Manish M Demblani 02.11.2015 10:43
quelle

Tags und Links