UITableView の検索バー フィルターの使用に問題があります。
複数の配列に温度データを記録しています:
NSMutableArray *timeArray; // Array which saves date and time
NSMutableArray *tempInside; // saves inside temp
NSMutableArray *tempOutside; // saves outside temp
NSMutableArray *timeArraySearch; // Array which saves date and time searched
NSMutableArray *tempInsideSearch; // saves inside temp searched
NSMutableArray *tempOutsideSearch; // saves outside temp searched
すべてのデータを表示するには、UITableView を使用します。には timeArray を使用しcell.textlabel.text
ます。
現在、検索バーを使用してデータをフィルタリングするのに問題があります。これが私の
filterContentForSearchText
方法です:
- (void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope
{
NSPredicate *resultPredicate = [NSPredicate
predicateWithFormat:@"SELF contains[cd] %@",
searchText];
tempInsideSearch = [tempInside filteredArrayUsingPredicate:resultPredicate];
tempOutsideSearch = [tempOutside filteredArrayUsingPredicate:resultPredicate];
timeArraySearch = [timeArray filteredArrayUsingPredicate:resultPredicate];
}
アプリケーションを実行したところ、空の配列の例外が発生しました。次に、このメソッドをもう一度チェックしたところ、「06:41PM」のような値が含まれていないため、tempInsideSearch と tempOutsideSearch が空であることが正常であることがわかりました...
最後に、ここに私の質問があります: インデックスを timeArray に適合させるには、一時配列をフィルター処理するにはどうすればよいですか?