当前位置: 代码迷 >> Android >> android 智能检索联系人 做过的朋友进 静待达人解决办法
  详细解决方案

android 智能检索联系人 做过的朋友进 静待达人解决办法

热度:75   发布时间:2016-05-01 22:16:08.0
android 智能检索联系人 做过的朋友进 静待达人
要实现的功能就是 根据输入的字符串检索联系人的姓名。 

遇到的难点: 
1.要输入的字符串是在拨号盘中输入,也就是只能输入1到9的数字。 
那我怎样根据数字得到相对应的字母。比如:2对应(a,b,c);3对应(d,e,f) 
2.就算能得到对应的字符,那应该怎样去匹配。 
比如:输入"23" 两个数字。会匹配出的字符串包括:"ad","ae","af","bd","be","bf","cd","ce","cf" 9个字符串。 
我会拿这九个字符串去数据库去匹配。 
关键问题是一般用户都会输入很多数字,手机号就有11位,那匹配起来数量相当的大,11位的话,匹配出来的字符串就是3的11次方。然后拿这么多字符串去根数据库里的联系人去匹配。数量又会大大的增加。 


主要就是这两个问题,做过的朋友给点意见,或者我这个思路根本就不对。 
谢谢~ 


------解决方案--------------------
你有源码么?可以在源码里面对Contacts这张表加个字段!事先可以把联系人转成对应的拼音首字母!然后再进行比较
------解决方案--------------------
直接根据号码匹配就行了啊
如果是根据输入的字符串,那你可以用getText()获得输入的内容,然后再进行匹配啊。
------解决方案--------------------
你说的功能就是类似MOTO的XT800的那个拨号盘吧
------解决方案--------------------
探讨

用声母,韵母的规则排除掉一些组合?
  相关解决方案