Android studio之GridView使用

这篇具有很好参考价值的文章主要介绍了Android studio之GridView使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

效果图:

代码:

UserGridviewAdapter

package com.example.gridviewpro.Adapter;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.example.gridviewpro.R;
import com.example.gridviewpro.bean.UserGridviewBean;

import java.util.List;

public class UserGridviewAdapter extends BaseAdapter {
    private Context mContext;
    private List<UserGridviewBean> mUserGridviewBeanList;

    public UserGridviewAdapter(Context context, List<UserGridviewBean> userGridviewBeanList) {
        mContext = context;
        mUserGridviewBeanList = userGridviewBeanList;
    }

    @Override
    public int getCount() {
        return mUserGridviewBeanList == null ? 0 : mUserGridviewBeanList.size();
    }

    @Override
    public Object getItem(int i) {
        return getItem(i);
    }

    @Override
    public long getItemId(int i) {
        return i;
    }

    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        ViewHolder viewHolder;
        if (view == null) {
            view = View.inflate(mContext, R.layout.gridview_item, null);
            viewHolder = new ViewHolder(view);
            view.setTag(viewHolder);
        } else {
            viewHolder = (ViewHolder) view.getTag();
        }
        UserGridviewBean userGridviewBean = mUserGridviewBeanList.get(i);
        viewHolder.mImageView.setImageResource(R.drawable.img);
        viewHolder.mUserName.setText(userGridviewBean.getUserName());
        viewHolder.mPower.setText(String.valueOf(userGridviewBean.getPower()));
        return view;
    }

    static
    class ViewHolder {
        View mView;
        ImageView mImageView;
        TextView mUserName;
        TextView mPower;

        ViewHolder(View view) {
            this.mView = view;
            this.mImageView = (ImageView) view.findViewById(R.id.img);
            this.mUserName = (TextView) view.findViewById(R.id.userName);
            this.mPower = (TextView) view.findViewById(R.id.power);
        }
    }
}

UserGridviewBean

package com.example.gridviewpro.bean;

public class UserGridviewBean {
    private int mImage;
    private String mUserName;
    private int mPower;

    public UserGridviewBean(int image, String userName, int power) {
        mImage = image;
        mUserName = userName;
        mPower = power;
    }

    public int getImage() {
        return mImage;
    }

    public void setImage(int image) {
        mImage = image;
    }

    public String getUserName() {
        return mUserName;
    }

    public void setUserName(String userName) {
        mUserName = userName;
    }

    public int getPower() {
        return mPower;
    }

    public void setPower(int power) {
        mPower = power;
    }
}

MainActivity

package com.example.gridviewpro;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.Toast;

import com.example.gridviewpro.Adapter.UserGridviewAdapter;
import com.example.gridviewpro.bean.UserGridviewBean;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {
    private List<UserGridviewBean> mUserGridviewBeanList = new ArrayList<>();
    private GridView mGridView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        DateResourse();
        mGridView = findViewById(R.id.gv);
        mGridView.setAdapter(new UserGridviewAdapter(MainActivity.this, mUserGridviewBeanList));
        //监控item点击情况
        mGridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                Toast.makeText(MainActivity.this, mUserGridviewBeanList.get(i).getUserName(), Toast.LENGTH_SHORT).show();
            }
        });
    }

    private void DateResourse() {
        for (int i = 0; i < 100; i++) {
            mUserGridviewBeanList.add(new UserGridviewBean(R.drawable.img, "张三" + i, 100 + i));
        }
    }
}

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="match_parent"
    android:orientation="vertical">
<ImageView
    android:id="@+id/img"
    android:layout_width="60dp"
    android:layout_height="60dp"
    android:layout_gravity="center"/>
    <TextView
        android:id="@+id/userName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="10sp"
        android:layout_gravity="center"/>

    <TextView
        android:id="@+id/power"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="10sp"
        android:layout_gravity="center"/>
</LinearLayout>

activity_main.xml文章来源地址https://www.toymoban.com/news/detail-672484.html

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <GridView
        android:id="@+id/gv"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:numColumns="4"/>
</LinearLayout>

到了这里,关于Android studio之GridView使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android查看签名信息系列 · 使用Android Studio获取签名

    前言 Android查看签名信息系列 之使用Android Studio获取签名,通过Android Studio自带的gradle来获取签名信息。 优点:此法可查看 MD5、SHA1 等信息。 缺点:升级某个Studio版本后,没有签名任务了,特别不方便。 实现方法 一、使用 Android Studio 创建gradle获取签名信息。 1、使用 Androi

    2024年02月07日
    浏览(36)
  • Android Studio 使用教程

           下载链接:官网链接        进入官网点击下载最新版        勾选同意协议,点击下载,等待下载完成        下载完成之后打开安装程序        点击 next        点击 next        这里记得更改安装路径,不要安装在C盘里面,点击next        

    2023年04月09日
    浏览(30)
  • android studio git使用

    我们从远程仓库拉取代码时,一般有下面的两个选项 当使用Android Studio拉取代码时,有两种常见的选项:合并(merge)传入的更改到当前分支和变基(rebase)。 合并(Merge):当你选择合并选项时,Android Studio将会把远程仓库中的更改合并到你当前所在的分支中。这意味着,如

    2024年02月12日
    浏览(34)
  • [Android]Mac电脑Android Studio使用真机调试运行

    我这里是一台中兴手机 1. 手机打开USB调试 打开“设置”找到“关于手机”进入,连续点击版本号,直到提示“您已经进入开发者模式”。 回到“设置”找到“系统与更新”进入,再进入“开发者选项”,打开USB调试。 2. 用数据线连接电脑和手机 USB的用途选择“文件传输”

    2023年04月08日
    浏览(34)
  • Android、Android Studio 和 Gradle 是如何使用 Java 的

    可以肯定地说,每个人都知道 Android 使用 Java。然而,“使用 Java ”的含义范围相当大。因此,在本文中,我将介绍 Android 设备和我们用于 Android 开发的各种工具是如何使用 Java 平台的。 让我们从结论开始——下图显示了 Java 在 Android 生态系统中的作用: 使用 Java 编程语言编

    2024年02月10日
    浏览(34)
  • Android studio 软件git使用

     在 test 分支添加的方法 , 现在切换到 master分支   总共 2 个分支 , 当前的分支是 test   出现了     先试一下 force checkout , 尝试之后发现 , 你更改没有带过来 , 以为哪个类在master分支没有 , 所以这边也没有 , 切回分支 test   发现之前的跟改没有 ,    这样即可以找回 继续切

    2024年02月11日
    浏览(34)
  • Android studio 中使用sqlite

    当在 Android Studio 中使用 SQLite 数据库时,可以遵循以下详细步骤: android studio官网下载 这将添加 SQLite AndroidX 库的依赖项。 在上述代码中,我们创建了一个名为  DatabaseHelper  的类,它继承自  SQLiteOpenHelper 。在构造函数中,我们指定了数据库的名称和版本号。在  onCreate()

    2024年02月07日
    浏览(33)
  • 使用Android Studio配置已有工程

    Download Android Studio App Tools - Android Developers Android Studio provides app builders with an integrated development environment (IDE) optimized for Android apps. Download Android Studio today. https://developer.android.google.cn/studio/ 安装完成,其他配置详见: Android Studio安装和使用教程(全文图解)_android studio安装教程_朝歌

    2024年02月16日
    浏览(33)
  • Android Studio使用lombok插件

    1,使用android studio,在插件中检索lombok下载安装。 2,build.gradle导入依赖 implementation \\\'org.projectlombok:lombok:1.18.8\\\' annotationProcessor \\\'org.projectlombok:lombok:1.18.8\\\' 3,使用 //通过注解方式来使用此插件 @AllArgsConstructor全参构造 @NoArgsConstructor//无参构造 @Data//get set 4, lombok简介_晓风残月( ̄

    2024年02月08日
    浏览(29)
  • Android Studio 中使用uiautomatorviewer插件

    Android Studio是Google官方提供的一款用于 开发Android应用程序 的集成开发环境(IDE),它基于IntelliJ IDEA开发而来,为开发者提供了完整的工具链,包括代码编写、调试、测试、性能优化等。 Android Studio集成开发环境具有以下特点: 提供强大的布局编辑器 :Android Studio提供了强大

    2024年04月11日
    浏览(21)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包