Jag försöker mig på en tabhost och tabbarna ser ut att fungera utan problem, och aktiviteterna under varje tab verkar köras då jag loggar vilka aktiviteter som körs och när.
Däremot visas inte något i tabbarna utan bakgrunden förblir vit, det är precis som att setContentView(R.layout.*) inte fungerar i mina tabaktiviteter, men är lite osäker på att det är det som är problemet.
Mycket tacksam för all hjälp jag kan få!
MVH
Detta är tabhosten:
HTML:
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@android:id/tabhost"
android:background="#FFFFFF">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="5sp" />
</LinearLayout>
</TabHost>
Såhär lägger jag till tabbar i min TabActivity:
Kod:
intent = new Intent().setClass(this, SettingsActivity.class);
spec = tabHost.newTabSpec("settings")
.setIndicator(
res.getText(R.string.settings),
res.getDrawable(R.drawable.settings))
.setContent(intent);
tabHost.addTab(spec);
Och aktiviteten ser ut såhär:
Kod:
public class SettingsActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.settings);
Log.v("Activity","Settings");
}
}
Tabbarna fungerar man visar inte min layout R.layout.settings, dock skrivs raden till loggen i min SettingsActivity.
Edit: R.layout.settings innehåller en linearlayout.
Edit: Om jag tar bort TabWidget från min XML laddar tabhosten min settings aktivitet i FrameLayout. Jag trodde då att TabWidget överlappade FrameLayout men detta verkar inte vara fallet då jag la på en top margin på elementet. Ska TabWidget ha något med detta att göra?