android – 如何使用XML完整的标签创建布局?

前端之家收集整理的这篇文章主要介绍了android – 如何使用XML完整的标签创建布局?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在布局中制作标签.我发现了很多使用TabWidget,TabHost的示例和教程,但它们都涉及到以下之一:

>活动中的Java代码
>为每个选项卡分开活动
>为每个标签分隔碎片

标签内的内容是静态的,所以我应该能够将所有内容都包含在纯XML中.

反正这样做

解决方法

简单的答案,不.您必须在Java代码中设置您的TabHost并创建您的选项卡.您可以在不使用片段的情况下为选项卡提供静态布局,但仍需要使用Java进行安装.

如果您不在代码中执行此设置,您的TabWidget将不知道哪个布局对应于哪个选项卡,将无法正常工作.你将不得不写一点代码.

这样做的代码真的很简单.

XML(放置在你想要的布局中):

<TabHost android:id="@+id/tab_host"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >
    <LinearLayout android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
        <TabWidget android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
        <FrameLayout android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
            <LinearLayout
                android:id="@+id/tab_one_container"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content" />
            <LinearLayout
                android:id="@+id/tab_two_container"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content" />
        </FrameLayout>
    </LinearLayout>
</TabHost>

Java代码(放置在您设置布局的地方):

TabHost host = (TabHost)findViewById(R.id.tab_host);
host.setup();

TabSpec spec = host.newTabSpec("Tab One");
spec.setContent(R.id.tab_one_container);
spec.setIndicator("Tab One");
host.addTab(spec);

spec = host.newTabSpec("Tab Two");
spec.setContent(R.id.tab_two_container);
spec.setIndicator("Tab Two");
host.addTab(spec);

猜你在找的Android相关文章