首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android仿手机通讯录地址选择功能

思路: 1.效果是仿照网上大神实现的类似通讯录样式做的; 2.右边a-z是自定义的一个bar,设置了点击监听事件,以及对话框弹出 3.关键是adapter,判断了字母显示和隐藏 4.用到汉字转拼音...、按首字母排序等工具类 5.3个activity的跳转是用回调来实现,每个activity都实现了回调,这样就有了从区activity直接跳转到首页的效果 6.数据是调用的我本地的接口实现的,如果大家没有数据我可以想办法给你们提供测试的省市区数据接口...getSectionForPosition(int position){ return list.get(position).getSortLetters().charAt(0); } /** * 根据分类的首字母的...; view.setTag(holder); } else { holder= (ViewHolder) view.getTag(); } //根据position获取分类的首字母的...char ascii值 int section=getSectionForPosition(i); //如果当前位置等于该分类字母的Char的位置,则认为是第一次出现 if(i==getPositionForSection

1.9K10

使用APICloud AVM多端框架开发仿微信通讯录功能

2、按字母分类排序后的好友数据结构 ? 3、字母导航数据结构 ?...微信通讯录功能是将所有联系人根据字母首字拼音排序分类,单击右边字母滑动到相应字母分组编。...本项目的核心功能是对数据按首字母进行排序,页面布局可以按照微信的布局进行设计,由于涉及到页面滚动以及、滚动到指定位置,因此我们可以选用scroll-view组件。 本项目的页面布局结构图如下 ?...show-scrollbar='false' :bounces='true' style={'height:'+list_h+'px'}> 接下来讲解核心功能好友数据结构的转换,从服务端拿到的好友数据一般是没有按字母排序分类的格式如下.../res/avatar/tx1.jpg", "id": "1" }] }] 转换的原理就是提取nick_name字段第一个字符串获取拼音字母以及unicode码然后分组排序需要参照pinyin码表

62230
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    android仿微信联系人索引列表功能

    Button{ public interface OnTouchAssortListener{ public void onTouchAssortListener(String s); } // 分类...这样我们就得到了要显示的汉字字符串的拼音字母,然后将所有的字符串按照字母进行排序就可以得到一个从A-Z的有序的列表了。...item_en表示的是name变量也就是汉字字符串的拼音字符串,主要是用来获取首字母和进行字符串之间的比较。   ...现在假设已经有了一个List对象,里面保存了一些DataBean,那么问题来了,如何把这些DataBean对象按拼音字符串进行排序以及如何在List对象里面添加表示字母分隔符的DataBean对象呢?...} else { return o1.getItem_en().compareTo(o2.getItem_en()); } } }   可以看到,两个DataBean对象按照变量item_en也就是拼音字符串来进行排序

    83620

    记一件生活与查找的趣事

    检索 2.2.1 字典树 字典树的定义:https://zh.wikipedia.org/wiki/Trie 可能不太标准,随时画了一个,比如可以在格子上串两行绳子,第一行是首字母,第二行是拼音,钥匙扣用夹子夹在第二行对应拼音的位置...2.2.2 类似二分查找 将每个百家姓贴上标签,并按照百家姓书中出现的先后从小到大的顺序依次摆放, 假如店主熟悉百家姓,可以使用二分查找方式比较,查找顾客所需的姓氏。...利用排序 记住百家姓的顺序可能难度大一些,可以按照笔画排序,这样算出自己的姓氏多少笔画,从对应对应笔画的数字下查找即可,减少了重复查找的情况。...频率优先排序 还可以按照优先级排序,销量多的姓氏排在左侧,销量低的放在右侧。 这样非常见姓氏的直接从右侧找就可以了。...比如可以借鉴上述的方式贴上标签,按照序号排列号,将数量和序号构成一个实体作为值录入到Map中, 就可以快速告知是否有这个要是扣以及还有几个, 以及编号是多少, 由于按照编号排序好的很容易找到。

    45630

    汉语转拼音工具、新华字典API——两个支持Python的中文资源

    汉字转拼音工具 ▌功能 将中文字符转换为拼音。可用于汉字注音、排序、检索任务。 ▌特性 根据词组智能匹配最正确的拼音。 支持多音字。 简单的繁体支持, 注音支持。...支持多种不同拼音/注音风格。...▌支持版本 1.Node.js/JavaScript 版 注:这个版本同时支持在 Node 和 Web 浏览器环境运行; 作者:hotoo;来源:GitHub https://github.com...这时候你也许需要的是首字母风格(FIRST_LETTER)。...特性 Web 版 Node 版 拼音库 常用字库。压缩、合并 完整字库。不压缩、合并 分词 没有分词 使用分词算法,多音字拼音更准确。 拼音频度排序 有根据拼音使用频度优先级排序。 同 Web 版。

    3K30

    MySQL模糊查询性能优化

    业务背景 我们团队接到一个IEG市场部的一个内部系统开发,系统内填写工单时需要根据 rtx, 拼音, 中文名 模糊匹配用户,没错!...就是KM和TAPD那种效果: [1526286645_33_w419_h273.png] --- 首先KM和TAPD都是通过后台给前端生成一个js文件,由前端去做模糊查找,这样比较经济实惠,没有后台查询损耗...,定期更新js文件即可。...字段内容是中文,没法做全文索引,但是有变通的办法,就是将整句的中文分词,并按urlencode、区位码、base64、拼音等进行编码使之以"字母+数字"的方式存储于数据库中。...基于redis,性能高效,.实时更新索引,支持Suggest前缀、拼音查找(AutoComplete 功能) ,支持单个或多个分词搜索 ,可根据字段进行结果排序

    32.3K2216

    Thymeleaf目录页原理 发布于

    data-collection=${category.spec.displayName}这里使用category.spec.displayName来标记元素标签,在后面它可以帮助我们来对这些目录进行首字母排序...同时为了方便读者或博客博主能更快速的查找到分类,需要引入更有效的首字母排序功能,让英文与中文部分都分开按照A-Za-z0-9的顺序进行排序并重新组合。...isLetterA) return 1; // 如果 displayNameA 或 displayNameB 不满足全是英文字母的正则表达式,则将其转换为拼音...displayNameB = pinyin(displayNameB, { toneType: 'none' }).replaceAll(" ", ""); // 最后按照字母和数字的顺序排序进行组合...pinyin-pro,开发者在尝试时可以在script标签中引入这个CDN库https://cdn.jsdelivr.net/gh/zh-lx/pinyin-pro@latest/dist/pinyin-pro.js

    31210

    前端中文汉字转拼音

    本文简介 这次要推荐一个在前端就能实现 汉字转拼音 的工具库 —— pinyin-pro 。 这个库不止能把中文转成拼音输出,还有拼音匹配、获取声母、获取韵母、获取拼音字母等功能。...特色功能 获取汉字、词语、句子等多种格式的拼音 获取声母 获取韵母 获取拼音字母 获取音调 获取多音字的多种拼音 支持人名姓氏模式 支持自定义拼音 支持字符串和数组两种输出形式 支持拼音文本匹配功能...引入某个版本,如3.5.0版本 --> </...Object 类型,用于配置各种输出形式,options 的键值配置如下: 参数 说明 类型 可选值 默认值 pattern 输出的结果的信息(拼音 / 声母 / 韵母 / 音调 / 首字母) string

    5.6K20

    编程入门、进阶100例(16-20)

    这里保证 n 小于 10^100 输出格式: 在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。...* */ public class Program2_1002 { public static void main(String args[]) { //定义一个拼音字符串数组,存放数字对应的拼音...,小写字母,数字的个数各为多少 18.2 格式 输入格式: 输入一行字符串 输出格式: 分别输出大写字母,小写字母,数字的个数各位多少 Tips:只能输入英文字符,不包括标点符号 18.3 示例...样例输入: ada132ABa 样例输出: 大小字母2 小写字母4 数字3 18.4 代码实现 import java.util.*; //从控制台输入一串字符串统计小写的字母有多少个大写的字母有多少个...java.util.Scanner; /** * @author gorit * @date 2019年3月15日15:59:09 * @选择排序的实现:重复"从待排序的数据中寻找最小值,将其

    50220

    python0128_unicode_字符集_character_set_八卦_星座

    这最关键的位置 紧挨着 ascii 的字符的就是 Latin-1 由 iso-8859-1 西欧、北欧字符集进化而来​添加图片注释,不超过 140 字(可选)这其实也 标识出unicode的 编码排序规则...以书写系统为单位 分类和收录各种拼音文字 比如卢恩字符​添加图片注释,不超过 140 字(可选)再去捋一捋 拉丁字符进化过程吧拉丁字符进化史 发音词义埃及圣书体楔形写法希腊字符拉丁字符alpha...书写系统 英文字母、拉丁字母、西里尔文字母 都源自希腊文字母 Omicron不同的书写系统 可能会长相一样的字母但对应着不同的序号​添加图片注释,不超过 140 字(可选)虽然字形一模一样 但是属于三个书写系统...中日韩字符 中文编码原来是 gbkunicode 现在unicode把中日韩(CJK)当成一组 排序是CJK位置是unicode.org下方的code chart中找到​添加图片注释,不超过 140...字(可选)当然关于排序各有各的排法 中国是中日韩日本是日中韩韩国是韩中日unicode组织的CJK显然综合了东亚文化圈的排名 我仿佛听到卡吉玛所在位置 象形文字数量确实是拼音文字没有办法比的​添加图片注释

    52130

    老司机踩坑系列————中文排序

    老司机自告奋勇的接下了活,毕竟脑袋一想还不难,可老司机低估了中文排序的坑=。= 1.最初的想法 最开始老司机想,首先所有联系人都会按姓名首字母分组,似乎需要转拼音。...有了拼音就可以根据拼音排序,很顺畅的思路。Too young,Too naive。...2.逐字比较时确保字与拼音一一对应 最初的想法因为越界出问题,那么我是否让字与拼音一一对应上就好了呢? 那么首先要把字符串分成一个字一个字的,但是单词还要保证是单词而不是字母。...上面的排序老司机都是在排没有音调的拼音。...老司机都快疯了,妈妈,不要再让我给字符串排序了。。。 又开始翻阅博客如何排序啊。。。 之前考虑过这个方法 但问题是不能对首字母之后的拼音排序 而且需要引用额外的文件 比较麻烦。

    2K50
    领券