0

我有四个活动的简单 Tablayout。这是它的xml

 <?xml version="1.0" encoding="utf-8"?>
 <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">


        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:background="@drawable/bg1"
            />
        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:layout_weight="0"
            android:layout_marginBottom="-4dp"
            />
    </LinearLayout>
</TabHost>

当它启动时,连接到 tab0 的活动默认启动

我需要的是在任何活动开始如下所示之前创建开始布局![] http://i49.tinypic.com/2ugf3op.png

我不知道应该把活动的布局放在哪里

4

1 回答 1

0

默认情况下,在 android 中,总是默认选择第一个选项卡。你可以做的是让用户混淆没有选择任何内容是你更改选项卡的可绘制对象。默认情况下取消选择所有选项卡,并在框架布局中将内容设置为图像。然后,一旦用户单击选项卡,然后更改该选项卡的颜色,然后开始活动。默认情况下,连接到 tab0 的活动将始终启动。但是你可以在那里做一个检查条件,如果用户没有点击任何东西,那么显示一些带有背景的空白屏幕或以其他方式启动活动。

更新
默认情况下,根据您的意愿打开一些带有一些视图的空活动。这将在用户使用选项卡打开活动时立即显示。然后你可以OnTabChangeListener实现该活动并覆盖onTabChanged()

  public void onTabChanged(String tabId) {
            if (tabId.equals("TAB 0")) {
                  // Show your actual activity here
            } 
        }
于 2013-01-01T11:26:46.310 回答