带有支持版本低于11的选项卡的操作栏

时间:2014-04-27 12:02:03

标签: android android-fragments

我试图在android.developer中实现此示例:http://developer.android.com/guide/topics/ui/actionbar.html#Adding 当我使用TabListener类时:

TabListener<T extends Fragment> implements ActionBar.TabListener { }

未实现的方法(onTabSelected - onTabUnselected - onTabReselected)看起来像这样:

@Override
    public void onTabReselected(ActionBar.Tab arg0,
            android.support.v4.app.FragmentTransaction arg1) {
        // TODO Auto-generated method stub

    }

但在示例中,它看起来像:

public void onTabReselected(Tab tab, FragmentTransaction ft) {
    // User selected the already selected tab. Usually do nothing.
}

为什么我应该使用android.support.v4.app.FragmentTransaction而不是FragmentTransaction ??

3 个答案:

答案 0 :(得分:1)

因为android.support.v4.app.FragmentTransaction是11以下版本的Android版本 这就是它被包含在支持库中的原因。

FragmentTransaction不适用于api lvl 11以下的版本。但android.support.v4.app.FragmentTransaction可以正常工作。

答案 1 :(得分:1)

如果您使用appcompat_v7ActionBarActivity)来支持旧设备,或者如果您使用ActionBarSherlock来支持旧设备,则需要使用android-support-v4中的片段反向端口。其版本FragmentTransactionandroid.support.v4.app.FragmentTransactionandroid.app.FragmentTransaction用于本机API Level 11+版本的片段。

答案 2 :(得分:0)

所以我应该使用android.support.v4.FragmentTransaction来支持所有版本(包括11以下版本),我是对的吗? 我还需要扩展android.support.v4.app.Fragment以使用Fragments,对吗?