私のアプリには約 200 の UITableView 行があります。xcode でシミュレーターを使用して UISearchBar を介してデータをフィルター処理すると、すぐに結果がフィルター処理されて表示されますが、iPhone (iphone4、iOS 5.1.1) でアプリを実行すると、数回ハングします。検索結果が表示される数秒前。このコードを使用してデータをフィルタリングしています...
- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{
[self.filteredData removeAllObjects];
if ([searchText length] > 0) {
self.isSearching = YES;
for (AClass *filteredData in self.allData) {
NSRange titleResultRange = [filteredData.name rangeOfString:self.searchBar.text options:NSCaseInsensitiveSearch];
if (titleResultRange.location != NSNotFound) {
[self.filteredData addObject:filteredData];
}
}
}
else self.isSearching = NO;
[self.tableView reloadData];}
私のコードはシミュレーターで完全に正常に動作しているので問題ないと思いますが、iphone でより速く動作させるために何か必要なことはありますか? ところで、私の iPhone は問題なく動作しています。他のアプリを使用していますが、問題なく動作しています。