zoukankan      html  css  js  c++  java
  • iOS 搜索之拼音搜索

    1.需要用到第三方库 PinYin4Objc

    2.使用方法

    2.1 设置输出格式

    HanyuPinyinOutputFormat *fmt = [[HanyuPinyinOutputFormat alloc]init];

    fmt.caseType = CaseTypeUppercase;    // 表示按大写字母输出

    fmt.toneType = ToneTypeWithoutTone; // 表示不带声调 

    fmt.vCharType = VCharTypeWithUUnicode; // v以ü表示

    2.2 执行转换

    NSString *pinyin = [PinyinHelper toHanyuPinyinStringWithNSString:@"北京" withHanyuPinyinOutputFormat:fmt withNSString:@"#"];

    参数1:@"北京",  待转换的中文字符串

    参数2:fmt,        输出格式

    参数3:@"#",     分隔符,可以是空字符串 @""

    打印字符串pinyin的结果: BEI#JING

    3.实现拼音的首字母的搜索

    NSString *pinyin2 = [PinyinHelper toHanyuPinyinStringWithNSString:city.name withHanyuPinyinOutputFormat:fmt withNSString:@"#"];

    NSArray *words = [pinyin2 componentsSeparatedByString:@"#"];

    NSMutableString *headLetterStr = [NSMutableString string];

    [words enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {

      [headLetterStr appendString:[(NSString *)obj substringToIndex:1]];

    }];

    4.常规的搜索判断条件,举城市搜索的例子

    if( ([city.name rangeOfString:condition].length != 0) ||

        ([pinyin rangeOfString:condition.uppercaseString].length != 0) ||

        ([headLetterStr rangeOfString:condition.uppercaseString].length != 0)

      )

    {

           // 搜索成功,需要做的事情

    }

    5.实际效果

        

  • 相关阅读:
    windows下安装git
    使用forever运行nodejs应用
    在Sublime Text 2 中使用Git插件连接GitHub
    一个向导功能JS库
    GitHub window 提交失败的问题
    jquery.shapeshift网格插件支持动画效果
    类似bootstrap的UI库FlatUI
    timus_1006
    timus_1692
    系统引导加载器的简单实现
  • 原文地址:https://www.cnblogs.com/oumygade/p/4225376.html
Copyright © 2011-2022 走看看