Android Spinner和GridView组件怎么用
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,这篇文章将为大家详细讲解有关Android Spinner和GridView组件怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一. 概述:Spinner是我们
千家信息网最后更新 2025年11月08日Android Spinner和GridView组件怎么用
这篇文章将为大家详细讲解有关Android Spinner和GridView组件怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
一. 概述:
Spinner是我们所熟悉的下拉框列表。与ListView类似,我们必须为Spinner对象指定一个Adapter。我们从Spinner的简单用法开始讲述。

二. 实现
MainActivity.java
package com.example.demo03_29; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle;import android.view.View;import android.widget.Adapter;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.Spinner;import android.widget.TextView; public class MainActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener { TextView choice; ArrayAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); choice=(TextView) this.findViewById(R.id.choice); Spinner spinner=(Spinner)this.findViewById(R.id.sp1); adapter=ArrayAdapter.createFromResource(this, R.array.habit, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); spinner.setOnItemSelectedListener(this); } @Override public void onItemSelected(AdapterView> adapterView, View view, int i, long l) { choice.setText(adapter.getItem(i)); } @Override public void onNothingSelected(AdapterView> adapterView) { }} 在values包下的 string.xml
Demo03-29 - 10公里夜跑
- 爬山
- 游泳
- 吃饭
- 打代码
activity_main.xml
sipnner_down.xml
这个布局比较简单,就是在LinearLayout中放置一个LinearLayout、一个分隔组件用的View和一个显示所选结果的TextView。在其中嵌套的LinearLayout中放置一个用于提示用的TextView和下拉框Spinner。
三. 美化
MyAdapter.java
package com.example.demo03_29; import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ArrayAdapter;import android.widget.ImageView;import android.widget.TextView; import androidx.annotation.NonNull; public class MyArrayApater extends ArrayAdapter { private LayoutInflater minflater; String[] titles; String[] desc={ "集成工具", "高速保存,随时存储", "优质资源,尽在迅雷", "集成开发工具", "学习神器" }; int[] photos={R.drawable.p1,R.drawable.p2,R.drawable.p3,R.drawable.p4,R.drawable.p5}; public MyArrayApater(@NonNull Context context, int resource, CharSequence[] objects) { super(context, resource, objects); minflater=(LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); titles=context.getResources().getStringArray(R.array.habit); } @Override public int getCount(){ return titles.length; } @Override public View getDropDownView(int position, View convertView, ViewGroup parent){ View v; v=minflater.inflate(R.layout.spinner_down,parent,false); ImageView iv=(ImageView)v.findViewById(R.id.p01); iv.setImageResource(photos[position]); TextView tv01=(TextView) v.findViewById(R.id.t1); tv01.setText(titles[position]); TextView tv02=(TextView) v.findViewById(R.id.t2); tv02.setText(desc[position]); return v; }}修改 MainActivity.java
四. GridView
GridView以二维表格的方式显示数据,若数据比较多,该组件将提供垂直滚动条。我们用一个列子来说明GridView的使用方法。
activity_main.xml
ImgeAdapter.java
package com.example.demo0330; import android.content.Context;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.GridView;import android.widget.ImageView; public class ImageAdapter extends BaseAdapter { private int[] images={ R.drawable.p1, R.drawable.p2, R.drawable.p3, R.drawable.p4, R.drawable.p1, R.drawable.p2, R.drawable.p3, R.drawable.p4, R.drawable.p1, R.drawable.p2, R.drawable.p3, R.drawable.p4, R.drawable.p1, R.drawable.p2, R.drawable.p3, R.drawable.p4, R.drawable.p1, R.drawable.p2, R.drawable.p3, R.drawable.p4, }; private Context context; public ImageAdapter(Context context){ this.context=context; } @Override public int getCount() { return images.length; } @Override public Object getItem(int position) { return images[position]; } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView; if (convertView==null){ imageView=new ImageView(context); int width= GridView.LayoutParams.MATCH_PARENT; int heght= GridView.LayoutParams.MATCH_PARENT; imageView.setLayoutParams(new ViewGroup.LayoutParams(width,heght)); imageView.setScaleType(ImageView.ScaleType.CENTER_INSIDE); }else{ imageView=(ImageView) convertView; } imageView.setImageResource(images[position]); return imageView; }}MainActivity.java
package com.example.demo0330; 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; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); GridView gridView=(GridView) findViewById(R.id.gr1); gridView.setAdapter(new ImageAdapter(this)); gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView> adapterView, View view, int position, long l) { Toast.makeText(MainActivity.this,"现在点击的是位置在"+(position+1)+"张照片",Toast.LENGTH_LONG).show(); } }); }}效果图:

关于"Android Spinner和GridView组件怎么用"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
组件
篇文章
中放
工具
数据
更多
下拉
不错
实用
代码
位置
使用方法
内容
对象
就是
布局
开发工具
效果
效果图
文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
建德政金互联网科技有限公司
网络安全进课堂主持词
云南培训网络安全班
数据库技术研究
从事软件开发最高等级是多少
LOL中东玩哪个服务器
学校网络安全会议召开简报范本
家用服务器系统
舟山交易软件开发
在数据库xskc
国内站群服务器
学生网络安全分为哪几类
A10负载均衡数据库
镇江正规软件开发培训学校
国内外网络技术分析
同台服务器传文件java
深圳市耐斯康网络技术
矩阵储存服务器管理
部落龙升级数据库
浅谈计算机网络安全论文简介
无线网络技术的启发和收获
国家安全教育日网络安全作文
软件开发设计学习方向
运维网络安全委员会
软件开发企业考核
idea修复数据库连接异常
阿里云怎么加入到云服务器
北辰区项目网络技术售后保障
从数据库读取数据绑定前台
33亿用于网络安全相关项目