Android中使用HorizontalScrollView横向滑动布局
在Android中,ListView通常用来实现纵向滚动的列表,而HorizontalScrollView则可以实现横向滚动的列表项。
引入HorizontalScrollView控件很简单,例如在一个LinearLayout中:
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:id="@+id/rl_title_log_activity"
android:layout_width="wrap_content"
android:layout_height="56dp"
android:orientation="horizontal">
<ImageView
android:id="@+id/iv_back_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:padding="16dp"
android:scaleType="centerCrop"
android:src="@drawable/icon_back_blue"/>
<TextView
android:id="@+id/tv_event_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Event"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_http_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="HTTP"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_socket_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Socket"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_agora_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Agora"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_other_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Other"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_clear_base_call_activity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Clear"
android:textColor="@color/blue"
android:textSize="22sp"
android:textStyle="bold"/>
</LinearLayout>
</HorizontalScrollView>
注意:
1:原来,在HorizontalScrollView中,只可存在一个直接的子View。因此正确的用法是使用一个如LinearLayout这样的控件,将多个子View放入其中
2:HorizontalScrollView中LinearLayout的witdh属性应为”wrap_content”。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:id="@+id/rl_title_log_activity"
android:layout_width="wrap_content"
android:layout_height="56dp"
android:orientation="horizontal">
<ImageView
android:id="@+id/iv_back_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:padding="16dp"
android:scaleType="centerCrop"
android:src="@drawable/icon_back_blue"/>
<TextView
android:id="@+id/tv_event_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Event"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_http_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="HTTP"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_socket_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Socket"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_agora_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Agora"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_other_log_activity"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Other"
android:textColor="@color/blue"
android:textSize="18sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_clear_base_call_activity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingLeft="@dimen/dp10"
android:paddingRight="@dimen/dp10"
android:text="Clear"
android:textColor="@color/blue"
android:textSize="22sp"
android:textStyle="bold"/>
</LinearLayout>
</HorizontalScrollView>
<ListView
android:id="@+id/lv_base_call_activity"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/rl_title_log_activity">
</ListView>
</LinearLayout>
还没有评论,来说两句吧...