UITextField中文搜尋,uitextfield

來源:互聯網
上載者:User

UITextField中文搜尋,uitextfield

匯入標頭檔

#import "ChineseInclude.h"
#import "PinYinForObjc.h"

    NSMutableArray *searchResults;//可變數組,添加搜尋到的資料

設定資料來源

- (NSArray *)dataArray {    if (!_dataArray) {        _dataArray = @[@"百度",@"六六",@"Google",@"蘋果",@"and",@"table",@"view",@"and",@"and",@"蘋果IOS",@"Googleandroid",@"微軟",@"微軟WP",@"table",@"table",@"table",@"六六",@"六六",@"六六",@"table",@"table",@"table"];    }    return _dataArray;}

監聽textField

   [_textField addTarget:self action:@selector(textFieldEditChanged:) forControlEvents:UIControlEventEditingChanged];

當輸入的時候進行搜尋

- (void)textFieldEditChanged:(UITextField *)mySearchBar{    searchResults = [[NSMutableArray alloc]init];    if (mySearchBar.text.length>0&&![ChineseInclude isIncludeChineseInString:mySearchBar.text]) {        for (int i=0; i<self.dataArray.count; i++) {            if ([ChineseInclude isIncludeChineseInString:self.dataArray[i]]) {                NSString *tempPinYinStr = [PinYinForObjc chineseConvertToPinYin:self.dataArray[i]];                NSRange titleResult=[tempPinYinStr rangeOfString:mySearchBar.text options:NSCaseInsensitiveSearch];                if (titleResult.length>0) {                    [searchResults addObject:self.dataArray[i]];                }                //                NSString *tempPinYinHeadStr = [PinYinForObjc chineseConvertToPinYinHead:self.dataArray[i]];//                NSRange titleHeadResult=[tempPinYinHeadStr rangeOfString:mySearchBar.text options:NSCaseInsensitiveSearch];//                if (titleHeadResult.length>0) {//                    [searchResults addObject:self.dataArray[i]];//                }            }            else {                NSRange titleResult=[self.dataArray[i] rangeOfString:mySearchBar.text options:NSCaseInsensitiveSearch];                if (titleResult.length>0) {                    [searchResults addObject:self.dataArray[i]];                }            }        }    } else if (mySearchBar.text.length>0&&[ChineseInclude isIncludeChineseInString:mySearchBar.text]) {        for (NSString *tempStr in self.dataArray) {            NSRange titleResult=[tempStr rangeOfString:mySearchBar.text options:NSCaseInsensitiveSearch];            if (titleResult.length>0) {                [searchResults addObject:tempStr];            }        }    }    NSLog(@"搜尋結果:%@",searchResults);
    //在這裡重新整理   // [_tableView reloadData];}

Demo下載連結:http://pan.baidu.com/s/1bncyjZD

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.