вкладка Android Tabhost и вид не соответствует - PullRequest
0 голосов
/ 12 декабря 2011

У меня есть две вкладки в моем вкладке, и каждая вкладка отображает вид списка.Первоначально моя первая вкладка отображается как выбранная, но приведенный ниже список соответствует второй вкладке.Как только я нажимаю на вкладки, я получаю правильное отображение.

private static final String LIST_TAB_TAG1 = "UpcomingEvents";
private static final String LIST_TAB_TAG2 = "PastEvents";

tabHost.addTab(tabHost.newTabSpec(LIST_TAB_TAG1)
            .setIndicator(LIST_TAB_TAG1)
            .setContent(new TabContentFactory() {
                public View createTabContent(String arg) {
                    return listView1;
                }
            }));
    tabHost.addTab(tabHost.newTabSpec(LIST_TAB_TAG2)
            .setIndicator(LIST_TAB_TAG2)
            .setContent(new TabContentFactory() {
                public View createTabContent(String arg) {
                    return listView2;
                }
            }));
    tabHost.setCurrentTab(0);

LIST_TAB_TAG1 подсвечивается, когда запускается эта sctivity, но отображается список listview2.Эта проблема только тогда, когда начинается деятельность.После нажатия вкладок, он работает нормально

Пожалуйста, помогите мне исправить это.Спасибо за ваше время

1 Ответ

0 голосов
/ 12 декабря 2011

Я обычно использую код, указанный в документации, который отлично работает для меня, попробуйте этот.

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    TabHost tabHost = getTabHost();  // The activity TabHost
    TabHost.TabSpec spec;  // Resusable TabSpec for each tab

    Intent intent;  // Reusable Intent for each tab
    // Create an Intent to launch an Activity for the tab (to be reused)
    intent = new Intent().setClass(this, UpcomingEvents.class);
    // Initialize a TabSpec for each tab and add it to the TabHost
    spec = tabHost.newTabSpec("UpcomingEvents").setIndicator("UpcomingEvents",getResources().getDrawable(R.drawable.homebutton1)).setContent(intent);
    tabHost.addTab(spec);
    // Do the same for the other tabs
    intent = new Intent().setClass(this,PastEvents.class);
    spec = tabHost.newTabSpec("PastEvents").setIndicator("PastEvents",
                      getResources().getDrawable(R.drawable.bank_transaction1))
                  .setContent(intent);
    tabHost.addTab(spec);

    tabHost.setCurrentTab(0);
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...