4

可以在没有 TabHost 的情况下使用 TabWidget 吗?我想要类似旧手机的 ActionBar 故障恢复的选项卡导航。

所以我只想显示用户选项卡并听取点击操作,我会在其中获得活动选项卡 ID。而已。

我知道在常见情况下,用于 actionBar 的 TabsNavigatin 仅用于浏览片段。但我很容易避免使用 Fragments。:

class mTabListener implements ActionBar.TabListener {

    private Screen screen;

    public mTabListener(Screen screen) {
        this.screen = screen;
    }

    public void onTabReselected(Tab tab, FragmentTransaction ft) {
        screen.onTabReselected(tab, ft);
    }

    public void onTabSelected(Tab tab, FragmentTransaction ft) {
        screen.onTabSelected(tab, ft);
    }

    public void onTabUnselected(Tab tab, FragmentTransaction ft) {
        screen.onTabUnselected(tab, ft);
    }

}


public abstract class Screen extends Activity {    
protected void addTab(String title, int what, boolean selected) {
    if (Global.API < 11)
        return;

    ActionBar bar = getActionBar();
    Tab tab = bar.newTab()
        .setTag(new Integer(what))
        .setTabListener(new mTabListener(this))
        .setText(title);

    bar.addTab(tab, selected);
}

    public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) {

    }

    public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {
        Integer what = (Integer)tab.getTag();
        tabSelected(what);
    }

    public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction ft) {

    }

    public void tabSelected(int what) {

    }
}

但我找不到如何将标签按钮添加到 TabWidget;

4

2 回答 2

0

这是解决方案,没有 tabHost 的 TabWidget

https://github.com/muratonnet/android-SingleTabWidget

于 2014-07-11T11:45:56.793 回答
0

不。没有选项卡主机的选项卡小部件就像使用选项卡的按钮一样。您将完成标签导航的操作。

于 2012-07-25T14:02:27.080 回答