При переключении вкладок в Android, что это значит? - PullRequest
2 голосов
/ 12 сентября 2010

У меня есть три вкладки, и у каждой есть своя активность. Когда я переключаю вкладки, я хочу, чтобы мой Spinner обновлялся, но я не знаю, какой метод вызывается при переключении вкладок. Любая помощь?

Ответы [ 2 ]

3 голосов
/ 12 сентября 2010

Подключите слушателя к TabHost.OnTabChangeListener.Ваше основное действие расширяет TabActivity, и его метод onCreate, вероятно, выглядит примерно так:

    @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    TabHost tabHost = getTabHost();

    LayoutInflater.from(this).inflate(R.layout.tabs1, tabHost.getTabContentView(), true);

    tabHost.addTab(tabHost.newTabSpec("tab1")
            .setIndicator("tab1")
            .setContent(R.id.view1));
    tabHost.addTab(tabHost.newTabSpec("tab3")
            .setIndicator("tab2")
            .setContent(R.id.view2));
    tabHost.addTab(tabHost.newTabSpec("tab3")
            .setIndicator("tab3")
            .setContent(R.id.view3));
}

Чтобы подключить слушателя, добавьте следующий код в метод onCreate ():

    tabHostt.setOnTabChangedListener(new OnTabChangeListener(){
    @Override
    public void onTabChanged(String tabId) {
        if(tabId.equals("tab1")) {
            //tab1
        }
        else if(tabId.equals("tab2")) {
            //tab2
        }
        else if(tabId.equals("tab3")) {
            //tab3
        }
    }
});

НТН

1 голос
/ 12 сентября 2010

Примерно так должно работать:

tabHost.setOnTabChangedListener(new OnTabChangeListener()
    {
        public void onTabChanged(String tabId)
        {
            //Do stuff in here
        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...