Android中切换标签页时,它是由什么组成的?

发布于 2024-09-18 17:31:31 字数 77 浏览 6 评论 0原文

我有三个选项卡,每个选项卡都有其自己的活动。当我切换选项卡时,我希望更新 Spinner,但我不知道选项卡切换时调用什么方法。有什么帮助吗?

I have three tabs and each one is its own activity. When I switch tabs I want my Spinner to update but I don't know what method gets called on tab switch. Any help?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

记忆消瘦 2024-09-25 17:31:31

将侦听器连接到 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
        }
    }
});

HTH

Hook up a listener to the TabHost.OnTabChangeListener. You main activity extends TabActivity and its onCreate method probably looks something like this:

    @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));
}

To hook up the listener, add the following code in your onCreate() method:

    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
        }
    }
});

HTH

红ご颜醉 2024-09-25 17:31:31

像这样的东西应该有效:

tabHost.setOnTabChangedListener(new OnTabChangeListener()
    {
        public void onTabChanged(String tabId)
        {
            //Do stuff in here
        }
    });

Something like this should work:

tabHost.setOnTabChangedListener(new OnTabChangeListener()
    {
        public void onTabChanged(String tabId)
        {
            //Do stuff in here
        }
    });
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文