Как использовать TabHost.OnTabChangeListener в Android? - PullRequest
28 голосов
/ 11 февраля 2010

Как использовать TabHost.OnTabChangeListener в Android?

дай мне пример кода ...: (

спасибо

Ответы [ 3 ]

76 голосов
/ 11 февраля 2010

почему я с удовольствием помогу вам, сэр:

myTabHost.setOnTabChangedListener(new OnTabChangeListener(){
@Override
public void onTabChanged(String tabId) {
    if(TAB_1_TAG.equals(tabId)) {
        //destroy earth
    }
    if(TAB_2_TAG.equals(tabId)) {
        //destroy mars
    }
}});

Где TAB_1_TAG - тег, предоставленный методу newTabSpec при создании вкладки.

7 голосов
/ 15 февраля 2012

Я думаю, что во многих случаях имеет смысл сделать вашу TabActivity слушателем:

public class MyTabActivity extends TabActivity implements OnTabChangeListener {

    private TabHost tabHost;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        /* Your onCreate code here */

        tabHost.setOnTabChangedListener(this);
    }

    /* ... */

    @Override
    public void onTabChanged(String tabId) {
        /* Your code to handle tab changes */
    }
}
0 голосов
/ 12 января 2017

Вы можете использовать OnTabSelectedListener, вот пример.

  tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {
            switch (tab.getText().toString()) {
                case "yourTabTitle":
                    //todo your code
                    break;
            }
        }
        @Override
        public void onTabUnselected(TabLayout.Tab tab) {
            switch (tab.getText().toString()) {
                case "yourTabTitle":
                    //todo your code
                    break;
            }
        }
        @Override
        public void onTabReselected(TabLayout.Tab tab) {
            switch (tab.getText().toString()) {
                case "yourTabTitle":
                    //todo your code
                    break;
            }
        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...