2012-10-20 56 views
1

首先,我將獲得NSArray中的數據庫,因此它不是sqlite問題。IOS - UITextField [在輸入過程中在sqlite數據庫中搜索]

我的問題是關於檢測單詞,只需要在打字過程中自動完成NSArray中的單詞。

我發現了一些教程,談論

[UITextFieldTextDidChangeNotification - addObserver .. etc] 

但不能描述清楚。

+0

http://stackoverflow.com/q/10550163/1059705 http://stackoverflow.com/q/11344461/1059705請儘快爲這些鏈接可能會有所幫助 – Bala

回答

1

你必須在你的.m文件中實現UITextfield動作方法Editing Changed然後根據你的TYPP實現下面的代碼來搜索和過濾數組。

NSString *match = textField.text; 
NSMutableArray *listFiles = [[NSMutableArray alloc] init]; 
NSPredicate *sPredicate = [NSPredicate predicateWithFormat:@"SELF CONTAINS[cd] %@", match]; 
listFiles = [NSArray arrayWithArray:[YOURARRAYNAME filteredArrayUsingPredicate:sPredicate]]; 
NSLog(@"%@",listFiles); 

// following array gives you sorted array 
    NSMutableArray *sortedArray = [[NSMutableArray alloc]initWithArray: [listFiles sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)]]; 

    NSLog(@"%@",sortedArray); 
+0

完美,太感謝了..其工作像做夢一樣。 現在,當我打字我可以看到調試器中的數組,我怎麼可以使文本字段內的自動完成的東西? – MahmoudMustafa

+0

我不確切地知道自動完成。但是如果上面的答案對你有用,那麼你可以接受並向上回答。 –

+0

它是完美的Rahul謝謝你,謝謝eveyone。 – MahmoudMustafa