Android GridView
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Android GridView,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3438字,纯文字阅读大概需要5分钟。
内容图文
![Android GridView](/upload/InfoBanner/zyjiaocheng/1252/7b09ecf562524797a96543b44f5106f0.jpg)
GridView网格视图
GridView网格视图是按照行,列分布的方式来显示多个组件,通常用于显示图片或是图标等,在使
用网格视图时,首先需要要在屏幕上添加GridView组件。
常用属性:
1. android:columnWidth 用于设置列的宽度
2. android:gravity 用于设置对齐方式
3. android:horizontalSpacing 用于设置各元素之间的水平间距
4. android:numColumns 用于设置列数
5. android:stretchMode 用于设置拉伸模式,其中属性值可以是
//none(不拉伸),
//spacingWidth(仅拉伸元素之间的间距),
//columnWidth(仅拉伸表格元素本身)或
//spacingWidthUniform(表格元素本身,元素之间的间距一起拉伸)
6. android:verticalSpacing 用于设置各元素之间的垂直间距
GridView与ListView类似,都需要通过Adapter来提供显示的数据.但是,ListView可以通过
android:entries来提供资源文件的数据源,GridView没有这些属性,所以必须通过适配器来为其
添加数据。
GridView的事件和ListView一样,都是设置
setOnItemClickListener(OnItemClickListener listener);
![技术分享](/img/jia.gif)
![技术分享](/img/jian.gif)
1 < RelativeLayout xmlns:android ="http://schemas.android.com/apk/res/android" 2 xmlns:tools ="http://schemas.android.com/tools" 3 android:layout_width ="match_parent" 4 android:layout_height ="match_parent" 5 android:orientation ="vertical" > 6 7 < GridView 8 android:id ="@+id/gv" 9 android:layout_width ="match_parent" 10 android:layout_height ="wrap_content" 11 android:layout_alignParentTop ="true" 12 android:layout_margin ="30dp" 13 android:numColumns ="4" 14 android:stretchMode ="columnWidth" /> 15 16 < ImageView 17 android:id ="@+id/img_large" 18 android:layout_width ="wrap_content" 19 android:layout_height ="wrap_content" 20 android:layout_alignLeft ="@id/gv" 21 android:layout_alignRight ="@id/gv" 22 android:layout_below ="@id/gv" 23 android:layout_margin ="20dp" 24 android:layout_centerHorizontal ="true" 25 android:adjustViewBounds ="true" 26 android:scaleType ="fitXY" 27 android:src ="@drawable/img01" /> 28 29 </ RelativeLayout >
![技术分享](/img/jia.gif)
![技术分享](/img/jian.gif)
1 < GridLayout xmlns:android ="http://schemas.android.com/apk/res/android" 2 android:layout_width ="match_parent" 3 android:layout_height ="match_parent" > 4 5 < ImageView 6 android:id ="@+id/img" 7 android:layout_width ="wrap_content" 8 android:layout_margin ="20dp" 9 android:layout_height ="wrap_content" 10 android:src ="@drawable/ic_launcher" /> 11 12 </ GridLayout >
![技术分享](/img/jia.gif)
![技术分享](/img/jian.gif)
1 public class MainActivity extends Activity { 2 3int[] imgs = newint[12]; 4 5 @Override 6protectedvoid onCreate(Bundle savedInstanceState) { 7super.onCreate(savedInstanceState); 8 setContentView(R.layout.activity_main); 910 initData(); 11 GridView gv = (GridView) findViewById(R.id.gv); 12final ImageView iv = (ImageView) findViewById(R.id.img_large); 1314 List<HashMap<String, Object>> data = new ArrayList<HashMap<String, Object>>(); 15for (int i = 0; i < 12; i++) { 16 HashMap<String, Object> map = new HashMap<String, Object>(); 17 map.put("img", imgs[i]); 18 data.add(map); 19 } 2021 SimpleAdapter adapter = new SimpleAdapter(MainActivity.this, data, 22 R.layout.item_layout, new String[] { "img" }, 23newint[] { R.id.img }); 24 gv.setAdapter(adapter); 2526 gv.setOnItemClickListener(new OnItemClickListener() { 2728 @Override 29publicvoid onItemClick(AdapterView<?> parent, View view, 30int position, long id) { 31 iv.setImageResource(imgs[position]); 32 } 33 }); 343536 } 3738privatevoid initData() { 39//初始化数据4041for (int i = 0; i < imgs.length; i++) { 42int imgI = i + 1; 43// 获取其他类的属性,通过属性获取属性对应得值 44// null代表的是静态变量,非静态变量需要传递对象45try { 46 imgs[i] = R.drawable.class.getField("img0" + imgI).getInt(null); 4748 } catch (Exception e) { 49 e.printStackTrace(); 50 } 51 } 52 } 5354 }
原文:http://www.cnblogs.com/Claire6649/p/5964930.html
内容总结
以上是互联网集市为您收集整理的Android GridView全部内容,希望文章能够帮你解决Android GridView所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。