`
caryt
  • 浏览: 8557 次
文章分类
社区版块
存档分类
最新评论

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

 
阅读更多

实现方法:

布局时需要加一个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); //重点



实例下载点击打开链接


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics