Aktionsleiste Tabs ohne Verwendung von Fragmenten?

8

Es ist vielleicht eine ziemlich neue Frage, aber trotzdem. Da Tabhost abgeschrieben ist, habe ich versucht, zu den Tabs der Aktionsleiste zu wechseln, aber ich habe Probleme mit Fragmenten. Gibt es eine Möglichkeit, Aktivitäten innerhalb der Aktionsleiste Tabs trotzdem zu verwenden?

Ich würde jede Hilfe zu schätzen wissen.

Danke.

    
Maddin 14.06.2012, 12:27
quelle

4 Antworten

3

Wenn Sie Aktivitäten über Fragmente verwenden möchten, können Sie einfach eine Absicht verwenden, um Ihre Aktivität von Ihrem ActionBar.TabListener

aus zu starten %Vor%

Sie sollten auch diesen Kommentar zur Verwendung von Fragmenten über Aktivitäten

lesen     
MrEngineer13 14.06.2012 12:38
quelle
2
  

Gibt es eine Möglichkeit, auf den Aktionsleisten-Tabs trotzdem Aktivitäten zu verwenden?

Glücklicherweise nein.

Das heißt jedoch nicht, dass Sie Fragmente verwenden müssen. Ihr TabListener kann alles tun, um die Änderung in Ihrer Benutzeroberfläche zu beeinflussen. Eine Brute-Force-Lösung wäre es, setContentView() erneut aufzurufen, alle alten Widgets auszugeben und einen brandneuen (vermutlich anderen) Satz zu erstellen.

    
CommonsWare 14.06.2012 13:04
quelle
0

Es ist möglich, Activity mit ActionBar zu verwenden. Vorsicht, dies ist kein beabsichtigtes Verhalten, aber das bedeutet nicht, dass es nicht perfekt funktioniert.

%Vor%

Wahrscheinlich möchtest du die Animation in deinem Activity überschreiben, so dass die Änderung der Tabs keine Rolle spielt. Ändern Sie dazu die onCreate() -Methode von Activity , wodurch ActionBarActivity

erweitert wird %Vor%     
slinden77 31.12.2012 08:42
quelle
0

Wenn mein Verständnis korrekt ist, möchten Sie die Aktionsleiste verwenden, um die Aktivität anstelle des Fragments zu tauschen. Bitte lesen Sie in diesem Fall weiter.

Aus dem offiziellen Dokument, das Sie sehen können, definiert das Aktionsleisten-Feature eine Menge von ui, position. Wenn Sie Actionbar mit Aktivität implementieren möchten, ist das Wichtigste, was zu tun ist 1. Verknüpfen Sie Ihre Registerkarte (Position) mit Ihrer Aktivität. 2. Fügen Sie tablistener callback hinzu (instanziieren Sie Ihre neue Aktivität, stoppen Sie die aktuelle Aktivität), jedes Mal, wenn Sie auf die Registerkarte klicken,

Das beste Design besteht darin, dass der Tablistener eine separate Klasse implementiert, so dass jede Ihrer Aktivitäten diese Klasse verwenden kann.

    
JUL 11.03.2013 21:35
quelle