我想在android中拥有可滚动的标签。我尝试将HorizontalScrollView
应用于TabWidget
,但它无效。
任何想法为什么它不起作用?
这是main.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:layout_width="fill_parent"
android:layout_height="wrap_content"
android:fillViewport="true"
android:scrollbars="none">
<TabWidget android:id="@android:id/tabs"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</HorizontalScrollView>
<FrameLayout android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</LinearLayout>
</TabHost>
答案 0 :(得分:0)
试试这个对我有用: -
<HorizontalScrollView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:fillViewport="true"
android:scrollbars="none">
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TabWidget android:id="@android:id/tabs"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<FrameLayout android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</LinearLayout>
</HorizontalScrollView>
答案 1 :(得分:0)
我之前遇到过同样的问题。我正在做同样的事情,但将Tabwidget放在HorizontalScrollView中是不够的,它在运行时缩小。所以我们必须在运行时通过循环定义小部件的高度和宽度。如下所示
for(int i=0;i<=numbeOfTabs;i++)
{
mTabHost.getTabWidget().getChildAt(i).getLayoutParams().width=100;
mTabHost.getTabWidget().getChildAt(i).getLayoutParams().height=100;
}