我需要在应用程序的顶部创建可滚动的选项卡。 tabhost似乎还可以,但是我不需要片段显示(如图所示),我只需要有clicklistener的标签。
我只需要像按钮这样的标签,它们需要能够水平滚动并按下。关于如何做到这一点的任何想法?
答案 0 :(得分:3)
使用HorizontalScrollView来实现此
下面我提供的代码片段,根据您的要求进行更改。
<?xml version="1.0" encoding="utf-8"?>
<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:src="@drawable/pic7"
android:text="image1" />
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Textview1" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:orientation="vertical"
android:layout_height="fill_parent">
<ImageButton
android:text="image2"
android:id="@+id/imageButton2"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:src="@drawable/pic2" />
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Textview2" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:orientation="vertical"
android:layout_height="fill_parent">
<ImageButton
android:text="image3"
android:id="@+id/imageButton3"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:src="@drawable/pic7" />
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Textview3" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:orientation="vertical"
android:layout_height="fill_parent">
<ImageButton
android:text="image4"
android:id="@+id/imageButton4"
android:layout_width="wrap_content"
android:layout_height="100dp"
android:src="@drawable/pic5" />
<TextView
android:id="@+id/text4"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Textview4" />
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
答案 1 :(得分:0)
使用TabLayout
可以实现这一目标
并将 tabmode 设置为 scrollable
标签
使用ViewPager标签创建新活动 并在TabLayout中将其模式设置为Scrollable。
<android.support.design.widget.TabLayout xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/tabs"
app:tabMode="scrollable"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
请参阅此页面,了解如何使用viewgager创建标签活动。TabLayout with viewPager