2016-06-16 2 views

답변

0

먼저 UISearchBar의 대리인을 설정하고 필터링 결과가있는 NSMutableArray을 만들어야합니다. UITableView의 dataSource가 이제이 새로운 배열을 발표 할 것입니다. 전체 코드는

-(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