GridView使用SimpleAdapter
Posted ocean123123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GridView使用SimpleAdapter相关的知识,希望对你有一定的参考价值。
<RelativeLayout 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:orientation="vertical" android:layout_height="match_parent" tools:context=".MainActivity"> <GridView android:id="@+id/gridview" android:layout_width="match_parent" android:layout_height="wrap_content" android:columnWidth="80dp" android:stretchMode="spacingWidthUniform" android:numColumns="3" />
主布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:orientation="vertical" android:layout_height="wrap_content"> <ImageView android:id="@+id/img" android:layout_width="60dp" android:layout_height="60dp" android:layout_marginTop="10dp" android:src="@drawable/ic_launcher_background" /> <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="2dp" android:layout_gravity="center" android:text="文字" /> </LinearLayout>
项目布局gridview_item
public class MainActivity extends AppCompatActivity private GridView gridView; private List<Map<String, Object>> dataList; private SimpleAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); gridView = (GridView) findViewById(R.id.gridview); //初始化数据 initData(); String[] from="img","text"; int[] to=R.id.img,R.id.text; adapter=new SimpleAdapter(this, dataList, R.layout.gridview_item, from, to); gridView.setAdapter(adapter); gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) AlertDialog.Builder builder= new AlertDialog.Builder(MainActivity.this); builder.setTitle("提示").setMessage(dataList.get(arg2).get("text").toString()).create().show(); ); void initData() //图标 int icno[] = R.drawable.ic5,R.drawable.ic5,R.drawable.ic5,R.drawable.ic5,R.drawable.ic5,R.drawable.ic5,R.drawable.ic5,R.drawable.ic5,R.drawable.ic5, R.drawable.ic5,R.drawable.ic5,R.drawable.ic5; //图标下的文字 String name[]="时钟","信号","宝箱","秒钟","大象","FF","记事本","书签","印象","商店","主题","迅雷"; dataList = new ArrayList<Map<String, Object>>(); for (int i = 0; i <icno.length; i++) Map<String, Object> map=new HashMap<String, Object>(); map.put("img", icno[i]); map.put("text",name[i]); dataList.add(map);
主activity
以上是关于GridView使用SimpleAdapter的主要内容,如果未能解决你的问题,请参考以下文章
Android--Gridview使用SimpleAdapter加载bitmap图片
Android--Gridview使用SimpleAdapter加载bitmap图片
使用GridView和SimpleAdapter实现手机界面的九宫格
使用GridView和SimpleAdapter实现手机界面常见的九宫格