2

我有一个 Activity,它有一个 Scrollview 作为顶级元素。里面有一些其他的视图,在某些时候有一个 TabHost。通过查看屏幕截图,您可能会获得更好的印象。TabHost 具有三个选项卡,每个选项卡都有另一个由 Intent 启动的 Activity。

除了一件事,一切都很好。每当我单击选项卡时,滚动视图会自动向下滚动,如您在此处看到的那样。TabHost 之后不在屏幕上。我只是不希望它向下滚动,但看不到问题所在。我在 1.5 和 1.6 设备以及 2.0 模拟器上进行了测试,结果相同。

我的 TabHost 的 xml 如下所示:

    <TabHost
        android:id="@+id/tabhost"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        <LinearLayout
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">
            <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">
            </FrameLayout>
        </LinearLayout>
    </TabHost>

这是添加标签的代码:

private void addTab(int descriptionRes, Class<?> destination, int flags) {
    String description = getString(descriptionRes);
    TabSpec spec = mTabHost.newTabSpec(description);
    spec.setIndicator(description);
    Intent i = new Intent(this, destination);
    i.setData(Uri.parse(member.getId())).setFlags(flags);
    spec.setContent(i);
    mTabHost.addTab(spec);
}

有什么建议么?

4

1 回答 1

0

您可以尝试将Activity 内部设置TabHost为可滚动,而不是顶层Activity本身。

于 2010-01-06T16:20:30.233 回答