我正在尝试实现这个应用程序。目前我已经在上面设计了标签,因为我有7个以上的标签,所以它看起来太拥挤了。我如何设计它,使tabwidget可以水平滚动。我在市场上的一些应用程序上看到过这种设计,但不知道如何在我的应用程序中实现。
我看到的一个应用程序有一个水平滚动视图,它可以自己滚动,当你按下特定的图像/按钮时,它会显示一些内容。我想这似乎不是标签。
有人知道吗?
来自Android设计库的TabLayout
<android.support.design.widget.TabLayout
android:id="@+id/categories"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:tabMode="scrollable" />
这是使用HorizontalScrollView的一个很好的例子。http://java.dzone.com/articles/scrolling-tabs-android
请查看Jake Wharton的ViewPager应用程序。这正是你所需要的。这是一个图书馆项目,所以你必须把它包括在你的项目中。
JakeWharton/Android ViewPagerIndicator
<HorizontalScrollView
android:id="@+id/vTabs"
android:scrollbars="none"
android:layout_width="fill_parent"
android:layout_alignParentBottom="true"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="horizontal"
android:background="@color/main_color_gray_dk"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<Button
android:enabled="false"
android:id="@+id/tab1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/popular" />
<View
android:id="@id/view1"
android:layout_width="@dimen/pad_1dp"
android:layout_height="fill_parent" />
<Button
android:id="@id/tab2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/newest" />
<View
android:id="@id/view1"
android:layout_width="@dimen/pad_1dp"
android:layout_height="fill_parent" />
<Button
android:id="@id/tab3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/distance" />
<View
android:id="@id/view1"
android:layout_width="@dimen/pad_1dp"
android:layout_height="fill_parent" />
<Button
android:id="@+id/tab4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/minimum" />
</LinearLayout>
</HorizontalScrollView>
根据您的喜好更改文本。放置在相关布局中并对齐ToParentBottom="true"希望这能帮助
检查此链接:https://dzone.com/articles/scrolling-tabs-android
用HorizontalScrollView包装TabWidget,选项卡集将能够扩展到屏幕宽度之外,用户可以拖动根据需要左右两侧的选项卡:
<?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="fill_parent" android:layout_height="wrap_content"/> </HorizontalScrollView> <FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout></TabHost>