获取 tabHost 中选定选项卡的索引

发布于 2024-09-15 22:35:25 字数 192 浏览 1 评论 0原文

我正在尝试将当前选定选项卡的索引存储在 onSaveInstanceState 中,以便我可以恢复它。然而, getCurrentTab 显然返回了我在 etTabHost().newTabSpec 中使用的字符串,我觉得这有点奇怪,因为文档说它返回一个 int ,而 setCurrentTab 也接受一个 int 。 有谁知道如何获取当前所选选项卡的索引以便恢复它?

I'm trying to store the index of the currently selected tab in onSaveInstanceState so I can restore it. However the getCurrentTab apparantely gives me back the String I used in the etTabHost().newTabSpec, which I find a bit weird since the documentation says it returns an int and setCurrentTab also taking an int.
Does anyone know how I can get the index of my currently selected tab so I can restore it?

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

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

发布评论

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

评论(3

始终不够 2024-09-22 22:35:25

您的方法是正确的,请使用 setOnTabChangedListener 来获取您选择的选项卡。

public class MainActivity extends TabActivity {
    static TabHost mytabs;

    mytabs = getTabHost();
    mytabs.setOnTabChangedListener(new OnTabChangeListener() {
        @Override
        public void onTabChanged(String arg0) {         
            Log.i("***Selected Tab", "Im currently in tab with index::" + mytabs.getCurrentTab());
        }       
    });  
...
...
...

you are on the right way, use setOnTabChangedListener to get your selected tab.

public class MainActivity extends TabActivity {
    static TabHost mytabs;

    mytabs = getTabHost();
    mytabs.setOnTabChangedListener(new OnTabChangeListener() {
        @Override
        public void onTabChanged(String arg0) {         
            Log.i("***Selected Tab", "Im currently in tab with index::" + mytabs.getCurrentTab());
        }       
    });  
...
...
...
夜司空 2024-09-22 22:35:25

您可以使用 getCurrentTab() 返回从 0 开始的制表符索引。

You can use getCurrentTab() that returns index of tab start from 0.

这样的小城市 2024-09-22 22:35:25

使用 tabHost.getCurrentTab() 获取 Tab ...

tabHost= getTabHost();
tabHost.addTab(tab0); // TabSpec tab0=tabHost.newTabSpec(...
tabHost.addTab(tab1); //  TabSpec tab1=tabHost.newTabSpec

int current = tabHost.getTabHost() ;

Use tabHost.getCurrentTab() to get Tab ...

tabHost= getTabHost();
tabHost.addTab(tab0); // TabSpec tab0=tabHost.newTabSpec(...
tabHost.addTab(tab1); //  TabSpec tab1=tabHost.newTabSpec

int current = tabHost.getTabHost() ;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文