最近在做一个地图相关的应用,涉及到全国城市的切换,于是打算把这个记录下来

用到的主要东西有:百度的全国城市列表,txt格式,jasonkit数据解析第三方,tableview,searchabar,汉字转拼音。

1.首先拿到的是百度的全国城市列表,因为是txt格式的,比较好处理,而且附带经纬度(虽然百度的是火星坐标,但处理起来那是后面的事情,总比没有强),高德的是pdf格式,没有经纬度。这份文件要做些适当的修改不然不能够解析为jason类型。百度的文件做了加密,这里还需要解码~真坑爹,好在不是很复杂,jason在这里只现身一次,得到所需要的字典

2.汉字转拼音,这个是为了排序和后面的搜索用的,当然,汉字转拼音也是用的代码行,一样很强大,速度也不慢,有一点需要强调的是,转换的时候两个if语句必须都要写上,不然不起作用,这个没细研究。封装好的city对象有名字,拼音,经纬度

3.排序:因为数组内存放的都是对象,所以需要对对象的某个属性排序才行,这里用的是拼音,方法也很简单

4.获得所有城市的首字母并将相同首字母的城市封装在同一个城市

列表显示城市列表是按照首字母显示的,所以这个很必要

最后需要三个数组

A:首字母数组;B:所有城市数组;C:按首字母分类好的所有城市列表

5.展示所有城市,tableview加载现成的数组,体力活

6.搜索

搜索的关键是按照拼音和汉字进行搜索的

拼音搜索的

http://download.csdn.net/detail/map625/6944965

iOS searchbar实现汉字更具拼音首字母排序相关推荐

  1. 汉字按拼音首字母排序

    按拼音首字母排序 localeCompare() 方法返回一个数字来指示一个参考字符串是否在排序顺序前面或之后或与给定字符串相同. 返回一个数字表示是否 引用字符串 在排序中位于 比较字符串 的前面, ...

  2. java对汉字按照拼音首字母排序_java对象集合中某个属性的汉字进行按拼音进行排序...

    在开发中,有些时候我们要对一个集合中的对象的某个属性进行按拼音排序,便于更快的找到汉字,我采用Comparator接口,在实现这个接口里定义排序规则,取得比较对象的汉字编码,并将其转换成字符串,运用S ...

  3. android 获取拼音首字母,Android开发 - 汉字转拼音首字母

    概述 工作中经常会遇到的一些排序问题,比如 按汉字的拼音首字母排序,比如人名排序等,就要用到下面的方法了,思路: 1.获得汉字 2.将汉字转换成首字母,并记录下(必要时保存到数据库) 3.按首字母进行 ...

  4. IOS汉字转拼音首字母

    项目中需要给UITableView建右侧索引,需要获取汉字的拼音首字母,而汉字转拼音一般都是使用CFStringTransform方法 - (NSString*)pinyin {if (self == ...

  5. php mysql 拼音首字母,Mysql应用MySQL查询汉字的拼音首字母实例教程

    <Mysql应用MySQL查询汉字的拼音首字母实例教程>要点: 本文介绍了Mysql应用MySQL查询汉字的拼音首字母实例教程,希望对您有用.如果有疑问,可以联系我们. 导读:最好的方法还 ...

  6. ajax返回的数据怎么显示出来_Excel输入汉字、拼音首字母就能显示数据出来,录数据时逐步提示...

    在办公中经常需要录入数据,特别是财务,人力资源,采购这块,经常需要 如果经常复制.粘贴很累,即使用到数据有效性进行设置,数据量多了,也不好选择. 所以,这里介绍两个Excel插件E灵和EXCEL必备工 ...

  7. 从gb2py.idx中获取一个汉字的拼音首字母

    function GetPinyinFromFile(aHanzi:string):AnsiChar; //从gb2py.idx中获取一个汉字的拼音首字母 var sfile:TMemoryStrea ...

  8. mysql hzpy_MySQL 实现查询汉字的拼音首字母 的字拼音

    的字拼音 MySQL 实现查询汉字的拼音首字母 时间:2010-04-06 12:23:22 类别:技术 访问:1,314 views RSS 2.0 评论 其实最好的方法还是用 PHP 来取拼音首字 ...

  9. Excel2007将汉字转换为拼音首字母

    Excel2007将汉字转换为拼音首字母 一.打开Excel,按下"Alt+F11"组合键,弹出"Visual Basic编辑器" 二.点击"Visu ...

最新文章

  1. 一次写多个字节的方法 || 数据追加续写
  2. 为什么美团打车、滴滴外卖必败?君智谢伟山揭秘了背后的竞争战略逻辑
  3. [Dubbo实战]dubbo + zookeeper + spring 实战 (转)
  4. 机器学习入门KNN近邻算法(一)
  5. 前端进阶之路: 前端架构设计(2)-流程核心
  6. #3601. 一个人的数论
  7. 为什么技术团队领导者多是后台开发人员
  8. iOS运行出现No application was specified.
  9. 常见3DMAX插件导出模型丢失贴图问题
  10. android studio adb 连接mumu 模拟器
  11. 修复iPhone白苹果
  12. Ubuntu生成so共享库的方法
  13. ubuntu18 防火墙关闭_ubuntu18上关闭默认的防火墙
  14. 【疑难杂症】Oculus Quest2 手机配对时找不到5-digit-code
  15. 相约2023 | 第 20 期高级转录组分析和R数据可视化火热报名中!!!
  16. Python游戏开发,Python实现贪吃蛇小游戏与吃豆豆 附带源码
  17. csdn月入过万的作者是如何练成的?
  18. Mac android原生工程中潜入react-native混合开发项目搭建
  19. 集成一个以官网(微信,QQ,微博)为标准的登录分享功能
  20. ApolloScape自动驾驶数据集

热门文章

  1. 电脑开机蓝屏代码C000021a
  2. fdsafdsafdsafdsafdsa
  3. 抖音创意拍摄玩法让你轻松上热门,抖音分身特效教程。
  4. webrtc下的媒体网络连接STUN、TURN、UDP、TCP
  5. excel 通过身份证 计算 年龄、性别
  6. 失眠患者的功能连通性改变
  7. 濒死状态下的静息态网络激活和功能连接
  8. 【回溯法】机器零件加工-最优加工顺序
  9. 压力测试软件怎么用,鲁大师温度压力测试如何使用
  10. Intent 和 Intentfilter