ListActivity не отображается при добавлении в качестве содержимого TabActivity. - PullRequest
0 голосов
/ 15 июля 2011

Я пытаюсь представить ListActivity в TabActivity, и по какой-то причине ListActivities просто не будет отображаться.Все, что я получаю, это пустое место под вкладками.

TabActivity: https://picasaweb.google.com/FlyingYellow/Misc#5629459368100202146 ListActivity: https://picasaweb.google.com/FlyingYellow/Misc#5629459406832281026

Я абсолютно не знаю, почему это происходит.Я искал вокруг и только нашел сообщения о проблемах ввода.Я даже не могу отобразить свой контент!

TabActivity.onCreate ()

 super.onCreate(savedInstanceState);
 setContentView(R.layout.browser);


 Resources res = getResources();
 TabHost tabHost = getTabHost();
 TabHost.TabSpec spec;
 Intent intent;


 intent = new Intent(this, ArtistBrowser.class);

 spec = tabHost.newTabSpec("artists").setIndicator("Artists", res.getDrawable(R.drawable.ic_tab_artists));
 spec.setContent(intent);

 tabHost.addTab(spec);

 intent = new Intent(this, AlbumBrowser.class);
 spec = tabHost.newTabSpec("albums").setIndicator("Albums", res.getDrawable(R.drawable.ic_tab_artists));
 spec.setContent(intent);

 tabHost.addTab(spec);

 intent = new Intent(this, TrackBrowser.class);
 spec = tabHost.newTabSpec("tracks").setIndicator("Tracks", res.getDrawable(R.drawable.ic_tab_artists));
 spec.setContent(intent);

 tabHost.addTab(spec);

 tabHost.setCurrentTab(0);

(я следовал руководству по документации для Android)

/ res / layout / browser.xml

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

  <LinearLayout
      android:orientation="vertical"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:padding="5dp">
    <TabWidget
        android:id="@android:id/tabs"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />    <--- this was the error
    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:padding="5dp" />
  </LinearLayout>
</TabHost>

1 Ответ

1 голос
/ 16 июля 2011

Еще раз, я обнаружил, что я идиот.На тот случай, если кто-нибудь еще столкнется с этой ошибкой, моей проблемой было то, что я не задумываясь установил высоту TabWidget на match_parent.Я понял это, используя разные цвета TabWidget и FrameLayout, и увидел, что весь экран был красным.Боже, мне нужно быть более осторожным.

...