我试图在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 ??
答案 0 :(得分:1)
因为android.support.v4.app.FragmentTransaction是11以下版本的Android版本 这就是它被包含在支持库中的原因。
FragmentTransaction不适用于api lvl 11以下的版本。但android.support.v4.app.FragmentTransaction可以正常工作。
答案 1 :(得分:1)
如果您使用appcompat_v7
(ActionBarActivity
)来支持旧设备,或者如果您使用ActionBarSherlock来支持旧设备,则需要使用android-support-v4
中的片段反向端口。其版本FragmentTransaction
为android.support.v4.app.FragmentTransaction
。 android.app.FragmentTransaction
用于本机API Level 11+版本的片段。
答案 2 :(得分:0)
所以我应该使用android.support.v4.FragmentTransaction来支持所有版本(包括11以下版本),我是对的吗? 我还需要扩展android.support.v4.app.Fragment以使用Fragments,对吗?