Android: SimpleAdapter+GridView 简单图片展示
创始人
2024-03-06 08:05:00
0

1:原理解析:

    一个xml放总布局,一个xml放适配器要加载的模板(我喜欢这样理解);

    java中写适配事件;

2:目录:

3:主布局:最重要的是要放一个GridView


注意其中两个属性:

android:columnWidth="110dp"
android:numColumns="auto_fit"

这可以使得我们能够通过调节前者来修改列数

4:加载的模板  main.xml






 就相当于把数据通过这个样式加载到GridView中的item的位置上去

5:java调用(我特别喜欢SimpleAdapter,各种适配器各有优点,根据实际情况选取)

package com.example.a4_4_2_2;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);GridView gridView1=(GridView)findViewById(R.id.gridView1);//定义并初始化保存图片id的数组Integer[] imageID = {R.drawable.image,R.drawable.image2,R.drawable.image3,R.drawable.image4,R.drawable.image5,R.drawable.image6,R.drawable.image7,R.drawable.image8};//定义并初始化保存名字的字符数组String[] title=new String[]{"风景1","风景2","风景3","风景4","风景5","风景6","风景7","风景8"};//创建一个list集合List> listItems =new ArrayList>();//通过for循环将图片id和文字放到Map中,并添加到list列表中for(int i=0;i map=new HashMap();//实例化Map对象map.put("image",imageID[i]);map.put("name",title[i]);listItems.add(map);}//创建SimpleAdapterSimpleAdapter adapter=new SimpleAdapter(this,listItems,R.layout.main,new String[]{"name","image"},new int[]{R.id.title,R.id.image});gridView1.setAdapter(adapter);//将适配器与Gridview关联gridView1.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Overridepublic void onItemClick(AdapterView adapterView, View view, int i, long l) {//获取选择项的值Map map=(Map)adapterView.getItemAtPosition(i);Toast.makeText(MainActivity.this,map.get("name").toString(),Toast.LENGTH_SHORT).show();}});}
}

用数组来存放/获取要适配的数据;

把对应项通过map放入list;

把view和数据用SimpleAdapter适配在一起;

6:应用原理如上,实战中灵活使用

 

相关内容

热门资讯

冬窗转会动态:米兰低成本签约菲... 在白鹿巷球场,随着伊萨克将球送进热刺的网窝,利物浦的球迷欢呼声还未消散,这位创下队史转会费纪录的前锋...
ST华铭(300462)披露累... 截至2025年12月23日收盘,ST华铭(300462)报收于11.3元,较前一交易日下跌1.31%...
辽宁省副省长李强已任大连市委副... 据大连新闻频道消息,12月23日,中共大连市委召开党外人士座谈会,深入学习贯彻习近平总书记在中央经济...
几万直播间都在放色情内容?律师... 一场持续约两小时的黑客攻击,揭开了直播行业内容安全防线的脆弱性。当违规内容如潮水般涌来,平台的人工审...
美媒:特朗普称,美国也许将扣留... 【环球网报道 记者 李梓瑜】据美国Axios新闻网、美国消费者新闻与商业频道(CNBC)等媒体报道,...
原创 中... 美国在委内瑞拉门口公然扣押油轮,10天抢走数百万吨原油,连中国公司的货也不放过。特朗普闯下大祸,五角...
文灿股份(603348)披露关... 截至2025年12月23日收盘,文灿股份(603348)报收于19.18元,较前一交易日下跌1.24...
瑞典“环保少女”在英国伦敦被捕... 据环球网,英国《独立报》12月23日报道称,瑞典“环保少女”格蕾塔·通贝里当天因参加支持巴勒斯坦的抗...
城西街道联合村居法律顾问开展校... 近日,城西街道联合辖区村居法律顾问申瑞霞律师走进那西龙源学校,开展“筑牢法律防线 预防性侵伤害”专题...
海川智能(300720)披露修... 截至2025年12月23日收盘,海川智能(300720)报收于29.7元,较前一交易日下跌3.07%...