TabHost Layouting

  • Antworten:3
Mac Systems
  • Forum-Beiträge: 1.727

25.10.2009, 03:11:42 via Website

Hallo,

in meinem UI wären Tabs keine schlechte Idee. Allerdings stört mich das Google Beispiel ein wenig :

http://developer.android.com/guide/tutorials/views/hello-tabwidget.html

Es sieht aus als müssten alle Tabs in einem XML File enthalten sein. Kann man das evtl. noch nach Tabs trennen indem mal eine
Referenz auf ein Layout pro Tab vergeben kann ?


Wenn das ein Tab wäre, in etwa so :

<TextView
android:id="@+id/textview1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="this is a tab"
android:reference="@layout/tab_layout"/> <----- Layout referenzieren

Mich wundert das es bei Google nirgends erwähnt wird, und noch mehr die Art dieser Lösung die nicht ins Gesamtbild passt (die durchaus positiv ist)
da sie sehr Codelastig ist für ein einfaches Beispiel. Daher vermute ich, das es zumindest per XML nicht gehen wird, andererseits aber den Aufwand scheue das
momentan von Hand zu tun.


PS: Ich sehe zwar zig Tags hier unter mir aber immernoch keinen Code Formatter ....

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Markus Gu
  • Forum-Beiträge: 2.644

25.10.2009, 09:42:42 via Website

hallo

soviel ich weiß, kann man komplette activities in einen tabHost laden. somit wäre das ja dann schön aufgetrennt oder?

swordiApps Blog - Website

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

25.10.2009, 17:47:34 via Website

So etwas ist mir bis jetzt unbekannt, kannst du mir ein Beispiel geben ?

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Jack-In-Da-Box
  • Forum-Beiträge: 1.569

25.10.2009, 19:25:11 via Website

Codebeispiel

import android.app.TabActivity;
import android.os.Bundle;
import android.widget.TabHost;
import android.content.Intent;

public class Tabs3 extends TabActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

final TabHost tabHost = getTabHost();

tabHost.addTab(tabHost.newTabSpec("tab1")
.setIndicator("1")
.setContent(new Intent(this, ACTIVITY1.class)));

tabHost.addTab(tabHost.newTabSpec("tab2")
.setIndicator("2")
.setContent(new Intent(this, ACTIVITY2.class)));

}
}

— geändert am 25.10.2009, 19:27:06

Antworten