Android基础控件—GridView

本文介绍了Android中的GridView,一种用于显示多内容的网格视图,常用于菜单和照片墙效果。讲解了如何通过代码实现GridView,展示了一个照片墙的效果,并详细说明了GridView的重要属性,如列数、宽度、间距等。同时,讨论了在子线程中处理大量图片以避免ANR问题及使用Handler在主线程中更新UI的重要性。
摘要由CSDN通过智能技术生成

1.GridView是什么?

       GridView又称为网格视图或者九宫格视图,当手机屏幕上需要显示比较多的内容时(包括文字、图片或者其它元素),可以使用GridView。最常见的GridView使用在于早期Android手机的一二级菜单和相册里的照片墙效果,当然如果将GridView的这种布局方式用于软件的主页面用来显示菜单,也是比较好的选择。

2.代码中具体实现

       接下来就使用GridView实现照片墙的效果来简单的介绍一下GridView的用法。

       实现后的效果:

       

       下面是一些GridView属性:

  • android:numColumns="auto_fit" ,GridView的列数设置为自动
  • android:columnWidth="90dp",每列的宽度,也就是Item的宽度
  • android:stretchMode="columnWidth",缩放与列宽大小同步
  • android:verticalSpacing="10dp",两行之间的边距,如:行一(NO.0~NO.2)与行二(NO.3~NO.5)间距为10dp
  • android:horizontalSpacing="10dp",两列之间的边距
     首先我们要先准备好GridView所需要的布局文件以及item的布局文件
//GridView的布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.chupeng.gridviewdemo.MainActivity">

    <GridView
        android:id="@+id/gridView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:horizontalSpacing="5dp"
        android:verticalSpacing="5dp"
        android:numColumns="3"
        android:listSelector="@android:color/transparent"
        android:stretchMode="columnWidth">

    </GridView>
</LinearLayout>

//GridView的item的布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center">

    <com.example.chupeng.gridviewdemo.SquareImageView
        android:id="@+id/squareImage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@color/gray"
        android:layout_margin="5dp"
        android:scaleType="
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值