Android中使用gridview如何让图片在上文字在下
16lz
2021-01-25
你说的是这样子么?
如果是这样子的话就看源码吧:
gridview.xml
Xml代码
item.xml
Xml代码
activity
Java代码
如果是这样子的话就看源码吧:
gridview.xml
Xml代码
- <?xmlversion="1.0"encoding="utf-8"?>
- <GridViewxmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/gridview"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:numColumns="auto_fit"
- android:verticalSpacing="10dp"
- android:horizontalSpacing="10dp"
- android:columnWidth="90dp"
- android:stretchMode="columnWidth"
- android:gravity="center"
- />
item.xml
Xml代码
- <?xmlversion="1.0"encoding="utf-8"?>
- <RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_height="wrap_content"
- android:layout_width="fill_parent"
- android:paddingBottom="4dip"
- >
- <ImageView
- android:id="@+id/ItemImage"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:layout_centerHorizontal="true"
- />
- <TextView
- android:id="@+id/ItemText"
- android:layout_width="wrap_content"
- android:layout_below="@+id/ItemImage"
- android:layout_height="wrap_content"
- android:layout_centerHorizontal="true"
- android:text="TextView01"
- />
- </RelativeLayout>
activity
Java代码
- packagecom.test;
- importjava.util.ArrayList;
- importjava.util.HashMap;
- importandroid.app.Activity;
- importandroid.os.Bundle;
- importandroid.view.View;
- importandroid.widget.AdapterView;
- importandroid.widget.AdapterView.OnItemClickListener;
- importandroid.widget.GridView;
- importandroid.widget.SimpleAdapter;
- publicclassTestGridViewextendsActivity{
- privateGridViewgridview;
- publicvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- setContentView(R.layout.gridview);
- gridview=(GridView)findViewById(R.id.gridview);
- //生成动态数组,并且转入数据
- ArrayList<HashMap<String,Object>>lstImageItem=newArrayList<HashMap<String,Object>>();
- for(inti=0;i<10;i++){
- HashMap<String,Object>map=newHashMap<String,Object>();
- map.put("ItemImage",R.drawable.icon);//添加图像资源的ID
- map.put("ItemText","NO."+String.valueOf(i));//按序号做ItemText
- lstImageItem.add(map);
- }
- //生成适配器的ImageItem<====>动态数组的元素,两者一一对应
- SimpleAdaptersaImageItems=newSimpleAdapter(this,//没什么解释
- lstImageItem,//数据来源
- R.layout.item,//night_item的XML实现
- //动态数组与ImageItem对应的子项
- newString[]{"ItemImage","ItemText"},
- //ImageItem的XML文件里面的一个ImageView,两个TextViewID
- newint[]{R.id.ItemImage,R.id.ItemText});
- //添加并且显示
- gridview.setAdapter(saImageItems);
- //添加消息处理
- gridview.setOnItemClickListener(newItemClickListener());
- }
- //当AdapterView被单击(触摸屏或者键盘),则返回的Item单击事件
- classItemClickListenerimplementsOnItemClickListener{
- publicvoidonItemClick(AdapterView<?>arg0,//TheAdapterViewwheretheclickhappened
- Viewarg1,//TheviewwithintheAdapterViewthatwasclicked
- intarg2,//Thepositionoftheviewintheadapter
- longarg3//Therowidoftheitemthatwasclicked
- ){
- //在本例中arg2=arg3
- @SuppressWarnings("unchecked")
- HashMap<String,Object>item=(HashMap<String,Object>)arg0.getItemAtPosition(arg2);
- //显示所选Item的ItemText
- setTitle((String)item.get("ItemText"));
- }
- }
- }
更多相关文章
- “罗永浩抖音首秀”销售数据的可视化大屏是怎么做出来的呢?
- Nginx系列教程(三)| 一文带你读懂Nginx的负载均衡
- 不吹不黑!GitHub 上帮助人们学习编码的 12 个资源,错过血亏...
- 【Android】继承SimpleCursorAdapter定制Adapter
- android savedInstanceState相关知识点
- Android[中级教程]第二章 数据存储之File
- Android文件存储(写入,读取,删除)
- Android使用控件ImageView加载图片的方法
- Android——Intent简介