【Android】GridView添加网格线
16lz
2021-12-27
GridView网格布局,默认情况下是没有网格线的
查找网上资料,找到了一种为GridView添加网格线的小技巧
实际上,该网格线是通过设置GridView各子项的间隔,并分别设置GridView背景色与子项背景色实现的。
实现方法
- 设置GridView背景色,设置水平间方向间隔属性值android:horizontalSpacing和竖直方向间隔属性值android:verticalSpacing
- 设置GridView子项背景色
- <?xmlversion="1.0"encoding="utf-8"?>
- <GridViewxmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/main_GridView"
- android:horizontalSpacing="1dp"
- android:verticalSpacing="1dp"
- android:stretchMode="columnWidth"
- android:numColumns="3"
- android:gravity="center"
- android:listSelector="@null"
- android:background="#DCDCDC"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent">
- </GridView>
- packagedyingbleed.iteye;
- importandroid.app.Activity;
- importandroid.content.Context;
- importandroid.graphics.Color;
- importandroid.os.Bundle;
- importandroid.view.Gravity;
- importandroid.view.View;
- importandroid.view.ViewGroup;
- importandroid.view.ViewGroup.LayoutParams;
- importandroid.widget.AbsListView;
- importandroid.widget.BaseAdapter;
- importandroid.widget.GridView;
- importandroid.widget.TextView;
- publicclassMainextendsActivity{
- privateGridViewgrid;
- @Override
- publicvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- grid=(GridView)findViewById(R.id.main_GridView);
- grid.setAdapter(newGridViewAdapter(this));
- }
- privateclassGridViewAdapterextendsBaseAdapter{
- privateContextcontext;
- publicGridViewAdapter(Contextcontext){
- this.context=context;
- }
- intcount=100;
- @Override
- publicintgetCount(){
- returncount;
- }
- @Override
- publicObjectgetItem(intposition){
- returnposition;
- }
- @Override
- publiclonggetItemId(intposition){
- returnposition;
- }
- @Override
- publicViewgetView(intposition,ViewconvertView,ViewGroupparent){
- TextViewresult=newTextView(context);
- result.setText("Item"+position);
- result.setTextColor(Color.BLACK);
- result.setTextSize(24);
- result.setLayoutParams(newAbsListView.LayoutParams(newLayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT)));
- result.setGravity(Gravity.CENTER);
- result.setBackgroundColor(Color.WHITE);//设置背景颜色
- returnresult;
- }
- }
- }
更多相关文章
- 用Fiddler抓取Android、Iphone网络数据包
- Android之TextView属性列表
- Android动画效果-更新中
- Android(安卓)onDraw
- android Canvas用法
- Android(安卓)CoordinatorLayout打造酷炫的顶部栏
- gravity和android:layout_gravity区别
- Android各种访问权限Permission详解
- Android之TextView------属性大全