您的位置:首页 > 其它

andorid gridview 单行横向显示 横向滚动实现

2016-10-19 00:00 316 查看
实现方法:

布局时需要加一个HorizontalScrollView 保证GridView可以横向显示滑动

加HorizontalScrollView时GridView 外面需要加一个LinearLayout线性布局

如:

<HorizontalScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >

<GridView
android:id="@+id/gridView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center" >
</GridView>
</LinearLayout>
</HorizontalScrollView>

item的布局根据自己要显示的数据随便定义

重点设置在代码中:

int length你的数据长度

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
float density = dm.density;
int gridviewWidth = (int) (110 * length* density);
int itemWidth = (int) (100 * density);

根据屏幕密度和你的数据长度设置gridView的宽度,和每个item的宽度

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
gridviewWidth , LinearLayout.LayoutParams.FILL_PARENT);
gridView.setLayoutParams(params); //重点
gridView.setColumnWidth(itemWidth); //重点
gridView.setHorizontalSpacing(10); //间距
gridView.setStretchMode(GridView.NO_STRETCH);
gridView.setNumColumns(length); //重点

实例下载点击打开链接
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: