我目前已开始使用HoneyComb平板电脑的投资组合应用程序。我已经使用ActionBar.Tab在每个Tab的ActionBar和Fragment上实现了三个选项卡。三个选项卡名称关于,图库,设置。在Settings ActionBar.Tab中,我想要TabHost。 这意味着如何在Fragment中使用TabHost。提前感谢您的想法!!!
答案 0 :(得分:3)
使用tabhost的布局(假设您将其定义为my_fragment_tabhost):
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TabWidget
android:id="@android:id/tabs"
android:visibility="gone"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
</LinearLayout>
</TabHost>
</LinearLayout>
在你的片段中,有一个TabHost成员变量并在onCreateView中获取它:
private TabHost mTabHost;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.my_fragment_tabhost, container, false);
mTabHost = (TabHost) view.findViewById(android.R.id.tabhost);
mTabHost.setup();//very important to call this
TabHost.TabSpec tab = mTabHost.newTabSpec("my tab content");
tab.setIndicator("my tab content")
//... add your content by one of the tab.setContent() methods
mTabHost.addTab(tab);
return view;
}