展会信息港展会大全

Android 城市列表ListView 之 按首字母分组
来源:互联网   发布日期:2015-11-26 16:19:53   浏览:2444次  

导读:首先准备两个Array:一个是城市TAg,另一个是城市Name[html]<string-array name="city_group_list"> <item>热门...

首先准备两个Array:一个是城市TAg,另一个是城市Name

[html]

<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>

[html]

<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

[java]

private List<String> list = new ArrayList<String>();

private List<String> listTag = new ArrayList<String>();

[java]

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]);

span style="white-space:pre"></span>//city_group.add(city_list_tag[i]);

}

}

}

适配器中这样写:

其中return super.isEnabled(position);设置城市首字母标示不可选

[java]

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开发 教程

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港