我的应用程序已android:targetSdkVersion
设置为 11。它使用TabHost
和TabWidget
两个选项卡。但是,android:minSdkVersion
设置为 7 (Android 2.1)。
我使用 Android 支持库 ( android-support-v13.jar
)。在我能够测试的所有地方,我的选项卡看起来都很好,除了在 2.1 中,它们似乎正在剪切构成选项卡内容的视图的一部分。这个问题在模拟器中也可以重现。
这是布局文件的相关部分:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/repeat_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TabHost
android:id="@android:id/tabhost"
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"
android:orientation="horizontal"
android: />
<FrameLayout>
...
</FrameLayout>
</TabHost>
</LinearLayout>
以下是我希望标签的外观:
这是我在 2.3 设备中得到的:
基本上,选项卡似乎比它们需要的高,并且也不必要地与FrameLayout
下面的内容重叠。
解决方案: 主要针对未来的访问者,如果您希望标签在所有平台上保持一致,直到 2.1,唯一的解决方案是使用自定义标签视图。你会在这里找到一个很好的教程。