• 締切済み

iPhoneアプリについて

私は、現在アプリの作成をしているのですが、行き詰まっています。 検索バーの設置は出来たのですが、検索処理があまりわかりません。 検索処理は、plist(情報が登録されている)からNSArrayをつくろうと考えています。 また、NSArrayのアイテムをNSDictionaryにし、そのNSDictionaryで 企業情報を持つようにしたいと考えているのですが、よくわかりません。 よろしければ教えていただけないでしょうか? お願いします。

みんなの回答

noname#161640
noname#161640
回答No.1

plistからNSArrayを取り出すのはできますか? 単に検索(絞り込み)ができないだけなら、NSPredicateを使えばいいでしょう。 id arr = NSArrayとする id pr = [NSPredicate predicateWithFormat:@"self LIKE %@",@"hello*"]; id filterd = [arr filteredArrayUsingPredicate:pr]; こんな具合にして、helloではじまる値だけを取り出せます。predicateWithFormat:ではいろいろフォーマット指定できますから調べてみてください。 また、NSArrayからNSDictionaryを生成するのですが、これは得られたNSArrayをキーにして、それぞれのキーに対応するオブジェクトをNSArrayとしてまとめ、両者を使ってNSDictionaryを生成します。 id dic = [NSDictionary dictionaryWithObjects:オブジェクト配列 forKeys:キー配列]; データ構造がそもそもわからないので、これ以上はなんともご返事できませんが……。イメージとしてはこんな感じでしょう。後はNSArrayとNSDictionaryを調べてみてください。

tome--to
質問者

お礼

わざわざありがとうございます。 NSMutableArray *results = [NSMutableArray arrayWithCapacity:0]; NSArray *allItems = [self allItems]; NSDictnoary *dict; for (dict in allItems) { if ([self isTarget:dict]) [results addObject:dict]; } [self.datasource setArray:allItems]; [self.tableView reloadData]; の前に持ってくるようなものを考えていました。

関連するQ&A