2016-06-16 4 views

答えて

0

最初に代理人をUISearchBarに設定し、フィルタリングされた結果を持つNSMutableArrayを作成する必要があります。 UITableViewのdataSourceがこの新しい配列をupponにリリースするようになりました。

その後は、次のようにデリゲートメソッドを追加します。完全なコードについては

-(void)searchBar:(UISearchBar*)searchBar textDidChange:(NSString*)text { 
    filteredTableData = [[NSMutableArray alloc] init]; 

    for (Food* food in allTableData) 
    { 
     NSRange nameRange = [food.name rangeOfString:text options:NSCaseInsensitiveSearch]; 
     NSRange descriptionRange = [food.description rangeOfString:text options:NSCaseInsensitiveSearch]; 
     if(nameRange.location != NSNotFound || descriptionRange.location != NSNotFound) 
     { 
      [filteredTableData addObject:food]; 
     } 
    } 
    [self.tableView reloadData]; 
} 

、こちらをご覧ください:Filtering a UITableView with a search bar

は、この情報がお役に立てば幸いです。

+0

「食品」とは何ですか?私はイオスに新しいです。あなたは私に教えてください。 –

+0

私はその完全なコードを見ていますが、理解していない、 "食べ物"は何ですか?任意のデータ型またはクラスからの任意の種類のtypedefです。 –

+0

すべての情報が含まれていないと申し訳ありません。 Foodは、配列に格納されているオブジェクトの(カスタム)タイプです。あなたの都市名を格納すると仮定すると、あなたのタイプはおそらくNSStringです。食品をNSStringに置き換えます。もしあなたがいくつかのコードを提供すれば、私はあなたをさらに助けるでしょう。 – AnthoPak

関連する問題