博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android ListView中的简单分组(标题含图片)
阅读量:5245 次
发布时间:2019-06-14

本文共 3398 字,大约阅读时间需要 11 分钟。

思路:ListView中添加一个SimpleAdapter,SimpleAdapter中动态添加大标题及大标题下的小标题,接下来按照思路来进行。

第一步:建立ListView布局文件list.xml

1 
7
11
12

 

第二步:建立list_items_menu.xml布局文件

 

第三步:建立activity类

 
package com.example.test_menu;import java.util.ArrayList;import java.util.HashMap;import com.example.test_menu.R;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.Window;import android.view.WindowManager;import android.view.ViewGroup.LayoutParams;import android.widget.AdapterView;import android.widget.ListView;import android.widget.RelativeLayout;import android.widget.SimpleAdapter;import android.widget.TextView;import android.widget.AdapterView.OnItemClickListener;import android.widget.Toast;public  class Test extends Activity {    ArrayList
> listItem; HashMap
map ; SimpleAdapter listItemAdapter; ListView list ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 设置屏幕没有标题 this.requestWindowFeature(Window.FEATURE_NO_TITLE); // 去掉标题栏 this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.list); // 绑定Layout里面的ListView list = (ListView) findViewById(R.id.list); // 生成动态数组,加入数据 listItem = new ArrayList
>(); String[] a={"管网动态","施工日报","通知公告"}; String[] b={"运行管理","运行监控","路径模拟优化","物料移动作业","阀门开关管理"}; String[] c={"巡检管理","巡检方案","巡检记录","巡检监控"}; String[] d={"专项管理","场站管理","管线管理","管廊管理","阀门管理"}; // 小标题前面的图标 int[] Image_a={R.drawable.ic_launcher,R.drawable.lcmn,R.drawable.lct,R.drawable.ic_launcher}; map(a,Image_a); map(b,Image_a); map(c,Image_a); map(d,Image_a); listItemAdapter = new SimpleAdapter(this, listItem,// 数据源 R.layout.list_items_menu,// ListItem的XML实现 // 动态数组与ImageItem对应的子项 new String[] {"ItemTitle", "ItemImage", "xiaoItemTitle" }, // ImageItem的XML文件里面的一个ImageView,TextView ID new int[] { R.id.ItemTitle,R.id.ItemImage, R.id.xiaoItemTitle }); // 添加并且显示 list.setAdapter(listItemAdapter); // 添加菜单点击 list.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView
arg0, View arg1, int arg2, long arg3) { for (int i = 0; i < listItem.size(); i++) { if (arg2 == i) { Toast.makeText(getApplicationContext(), listItem.get(arg2).get("xiaoItemTitle") + " " + arg2, Toast.LENGTH_SHORT) .show(); } } } }); } public void map(String[] a,int[] Image){ for(int i=0;i
(); for(int j=0;j

 

效果如下:

 

 

新手小小思路,请大家多多包涵!

 

转载于:https://www.cnblogs.com/osy-cd/p/4272188.html

你可能感兴趣的文章
Struts2 Action
查看>>
Strut2------源码下载
查看>>
[LeetCode] 152. Maximum Product Subarray Java
查看>>
Jquery中each的三种遍历方法
查看>>
数据库
查看>>
洛谷 P1967 货车运输(克鲁斯卡尔重构树)
查看>>
D2.Reactjs 操作事件、状态改变、路由
查看>>
ble学习笔记四---------------------控制lcd
查看>>
kali自定义分辨率(1920*1080)
查看>>
HDU4054_Hexadecimal View
查看>>
网页css效果调试技巧
查看>>
Python【第三课】 函数基础
查看>>
《Linux兵书》
查看>>
10 条“有争议”的编程观点
查看>>
Python全栈开发-Day11-RabbitMQ/Redis
查看>>
C# 实现可克隆(ICloneable)的类型
查看>>
AJAX 跨域请求 - JSONP获取JSON数据
查看>>
团队题目需求分析-NABCD
查看>>
求墙之间有多少水洼
查看>>
数据挖掘学习心得---聚类算法
查看>>