Android - 具有多个选项卡的Tabhost(Tabwidget)问题

时间:2011-10-23 19:27:47

标签: android android-tabhost tabwidget

我的列表中有五个标签,当TabActivity开始时你可以看到三个第一个标签,然后如果我向右滚动,另外两个也会出现。我遇到的问题是,如果屏幕上显示三个最后一个选项卡,则需要两次点击下两个选项卡才能启动,而前两个选项卡需要点击两个选项卡。

如果有人知道如何解决这些恼人的事情,请不要感激。

提前致谢!

编辑:

我发现真正的问题是当我滚动到结尾(左或右)导致任何标签被点击两次以便工作时,有人认出这个吗?我发现当滚动到最后(右或左)时可以轻敲一次,但仅在3秒后。如果我立即点击,则需要再次点击才能工作。

我的代码(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">
    <HorizontalScrollView
        android:id="@+id/scroll"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:scrollbars="none">
        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#000000"/>
    </HorizontalScrollView>
    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />
</LinearLayout>

2 个答案:

答案 0 :(得分:2)

您是否想尝试使用ViewFlipper(就像在新的Android市场中一样)。

这是整个代码,

Set default page for ViewPager in Android

答案 1 :(得分:1)

听起来你可能会失去对标签的关注。

您是否尝试过实施:

android.view.ViewTreeObserver.OnScrollChangedListener

并在触发时将焦点重新设置在TabHost上?

您也可以尝试使用TabHost

中的setOverScrollMode()