Android 城市列表ListView 之 按首字母分组
来源:互联网 发布:pyqt 安装 mac 编辑:程序博客网 时间:2024/05/16 02:45
首先准备两个Array:一个是城市TAg,另一个是城市Name
<string-array name="city_group_list"> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>热门</item> <item>A</item> <item>A</item> <item>A</item> <item>A</item> <item>A</item> <item>B</item> <item>B</item> <item>B</item> <item>B</item> <item>B</item> <item>B</item> <item>C</item> <item>C</item> <item>C</item> <item>C</item> <item>C</item> <item>C</item> <item>C</item> <item>C</item> <item>C</item> <item>D</item> <item>D</item> <item>D</item> <item>D</item> <item>D</item> <item>D</item> <item>D</item> <item>E</item> <item>F</item> <item>F</item> <item>F</item> <item>G</item> <item>G</item> <item>G</item> <item>G</item> <item>G</item> <item>G</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>H</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>J</item> <item>K</item> <item>K</item> <item>K</item> <item>K</item> <item>K</item> <item>L</item> <item>L</item> <item>L</item> <item>L</item> <item>L</item> <item>L</item> <item>L</item> <item>L</item> <item>M</item> <item>M</item> <item>M</item> <item>M</item> <item>M</item> <item>N</item> <item>N</item> <item>N</item> <item>N</item> <item>N</item> <item>N</item> <item>N</item> <item>Q</item> <item>Q</item> <item>Q</item> <item>Q</item> <item>Q</item> <item>Q</item> <item>Q</item> <item>S</item> <item>S</item> <item>S</item> <item>S</item> <item>S</item> <item>S</item> <item>S</item> <item>S</item> <item>S</item> <item>S</item> <item>T</item> <item>T</item> <item>T</item> <item>T</item> <item>T</item> <item>T</item> <item>W</item> <item>W</item> <item>W</item> <item>W</item> <item>W</item> <item>W</item> <item>W</item> <item>W</item> <item>W</item> <item>W</item> <item>W</item> <item>X</item> <item>X</item> <item>X</item> <item>X</item> <item>X</item> <item>X</item> <item>X</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Y</item> <item>Z</item> <item>Z</item> <item>Z</item> <item>Z</item> <item>Z</item> <item>Z</item> <item>Z</item> <item>Z</item> <item>Z</item> </string-array>
<string-array name="city_description_list"> <item>北京首都</item> <item>上海虹桥</item> <item>上海浦东</item> <item>广州</item> <item>深圳</item> <item>香港</item> <item>澳门</item> <item>天津</item> <item>成都</item> <item>重庆</item> <item>南京</item> <item>青岛</item> <item>珠海</item> <item>福州</item> <item>哈尔滨</item> <item>大连</item> <item>海口</item> <item>沈阳</item> <item>厦门</item> <item>安庆</item> <item>鞍山</item> <item>阿克苏</item> <item>阿勒泰</item> <item>安康</item> <item>北京首都</item> <item>北京南苑</item> <item>保山</item> <item>包头</item> <item>北海</item> <item>蚌埠</item> <item>重庆</item> <item>成都</item> <item>长沙</item> <item>长春</item> <item>常德</item> <item>长治</item> <item>常州</item> <item>朝阳</item> <item>赤峰</item> <item>大连</item> <item>敦煌</item> <item>大理</item> <item>达县</item> <item>东营</item> <item>丹东</item> <item>大同</item> <item>恩施</item> <item>福州</item> <item>阜阳</item> <item>富蕴</item> <item>广州</item> <item>桂林</item> <item>贵阳</item> <item>格尔木</item> <item>广汉</item> <item>赣州</item> <item>海口</item> <item>哈尔滨</item> <item>杭州</item> <item>合肥</item> <item>黄山</item> <item>呼和浩特</item> <item>海拉尔</item> <item>哈密</item> <item>汉中</item> <item>黑河</item> <item>衡阳</item> <item>和田</item> <item>黄岩</item> <item>吉林</item> <item>济南</item> <item>九江</item> <item>九寨黄龙</item> <item>吉安</item> <item>佳木斯</item> <item>嘉峪关</item> <item>济宁</item> <item>景德镇</item> <item>景洪</item> <item>晋江</item> <item>锦州</item> <item>酒泉</item> <item>昆明</item> <item>克拉玛依</item> <item>喀什</item> <item>库尔勒</item> <item>库车</item> <item>洛阳</item> <item>兰州</item> <item>拉萨</item> <item>连云港</item> <item>丽江</item> <item>临沂</item> <item>柳州</item> <item>泸州</item> <item>芒市</item> <item>梅县</item> <item>绵阳</item> <item>牡丹江</item> <item>满洲里</item> <item>南京</item> <item>宁波</item> <item>南昌</item> <item>南宁</item> <item>南通</item> <item>南充</item> <item>南阳</item> <item>青岛</item> <item>秦皇岛</item> <item>齐齐哈尔</item> <item>泉州</item> <item>衢州</item> <item>且末</item> <item>庆阳</item> <item>沈阳</item> <item>深圳</item> <item>上海虹桥</item> <item>上海浦东</item> <item>汕头</item> <item>石家庄</item> <item>苏州</item> <item>三亚</item> <item>沙市</item> <item>思茅</item> <item>天津</item> <item>塔城</item> <item>太原</item> <item>通化</item> <item>通辽</item> <item>铜仁</item> <item>温州</item> <item>武汉</item> <item>武汉王家</item> <item>无锡</item> <item>乌鲁木齐</item> <item>威海</item> <item>梧州</item> <item>万县</item> <item>潍坊</item> <item>乌兰浩特</item> <item>武夷山</item> <item>厦门</item> <item>徐州</item> <item>西安</item> <item>西宁</item> <item>西昌</item> <item>襄樊</item> <item>锡林浩特</item> <item>银川</item> <item>延安</item> <item>延吉</item> <item>烟台</item> <item>盐城</item> <item>宜宾</item> <item>宜昌</item> <item>伊宁</item> <item>义乌</item> <item>永州</item> <item>榆林</item> <item>珠海</item> <item>昭通</item> <item>张家界</item> <item>湛江</item> <item>芷江</item> <item>中甸</item> <item>舟山</item> <item>遵义</item> <item>郑州</item> </string-array>
在Activity中声明两个List,然后读取数据到list
private List<String> list = new ArrayList<String>();private List<String> listTag = new ArrayList<String>();
public void getData() {String city_name_list[] = CityListActivity.this.getResources().getStringArray(R.array.city_description_list);String city_list_tag[] = CityListActivity.this.getResources().getStringArray(R.array.city_group_list);// ///////////////////////////String cityTag[] = { "热门", "A", "B", "C", "D", "E", "F", "G", "H", "J","K", "L", "M", "N", "Q", "S", "T", "W", "X", "Y", "Z" };int listsize[] = { 0, 19, 5, 6, 9, 7, 1, 3, 6, 13, 13, 5, 8, 5, 7, 7,10, 6, 11, 7, 11, 9 };for (int j = 1; j < listsize.length; j++) {list.add(cityTag[j - 1]);listTag.add(cityTag[j - 1]);listsize[j] = listsize[j - 1] + listsize[j];for (int i = listsize[j - 1]; i < listsize[j]; i++) {list.add(city_name_list[i]);// System.out.println(city_list_tag[i]);//city_group.add(city_list_tag[i]);}}}
适配器中这样写:
其中return super.isEnabled(position);设置城市首字母标示不可选
public class CityListAdapter extends ArrayAdapter<String>{ private List<String> listTag = null; public CityListAdapter(Context context, List<String> objects, List<String> tags) { super(context, 0, objects); this.listTag = tags; } @Override public boolean isEnabled(int position) { if(listTag.contains(getItem(position))){ return false; } return super.isEnabled(position); } @Override public View getView(int position, View convertView, ViewGroup parent) { View view = convertView; if(listTag.contains(getItem(position))){ view = LayoutInflater.from(getContext()).inflate(R.layout.citylist_tag, null); }else{ view = LayoutInflater.from(getContext()).inflate(R.layout.citylist_item, null); } TextView textView = (TextView) view.findViewById(R.id.group_list_item_text); textView.setText(getItem(position)); return view; }}
- Android 城市列表ListView 之 按首字母分组
- Android 城市列表ListView 之 按首字母分组
- Android 城市列表ListView 之 按首字母分组
- Android 列表之分组ListView
- Android 列表之分组ListView
- Android ListView城市列表,按a-z分组字母索引排序
- Android --- App列表之分组ListView
- 关于城市列表按首字母排序、分组及查找的一个解决方案(mysql端)java
- Android ListView列表分组
- Android ListView列表分组
- Android ListView列表分组
- 城市列表按首字母自动排列
- Android ListView专题之十一 列表之分组
- App列表之分组ListView
- pp列表之分组ListView
- App列表之分组ListView
- App列表之分组ListView
- App列表之分组ListView
- JDK6的新特性之五:轻量级Http Server
- 设计模式学习-----组合模式
- mybatis 物理分页技术
- JDK6的新特性之六:插入式注解处理API
- 页面前端的水有多深?
- Android 城市列表ListView 之 按首字母分组
- MFC打印 打印预览
- 【bloom filter】布隆过滤器 (Bloom Filter) 详解
- JDK6的新特性之七:用Console开发控制台程序
- 内存池实现
- 算法之希尔排序
- ORA-01187 EXP导出错误解决方法
- Avoid Finalizers
- 五分钟学会HTML5!(二)