2010-08-03 4 views
0

큰 문제가 있습니다. Apple Resource 페이지의 표 검색 샘플에서 일부 코드를 복사했습니다. 예를 들어 내가 한 글자 한 다음 두 번째 문자를 입력 할 때UISearchDisplay - 응용 프로그램 충돌

#pragma mark - 
#pragma mark Content Filtering 

- (void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope 
{ 

[self.chatMessagesArrayCopyForSearching removeAllObjects]; // First clear the filtered array. 
if ([searchText length]==0) 
{ 

}else 
{ 
    for (FriendMessage *friend in chatMessagesArray) 
    { 
    NSComparisonResult result = [friend.message compare:searchText options:(NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch) range:NSMakeRange(0, [searchText length])]; 
    if (result == NSOrderedSame) 
    { 
    [self.chatMessagesArrayCopyForSearching addObject:friend]; 

    NSLog(@"%@", friend.message); 
    } 
    } 
} 
} 

응용 프로그램 충돌 :

여기 경우입니다. 아마 콘솔 렸기 때문에 friend.message 뭔가가 말한다 :

-[AccessibilityObjectWrapper message]: unrecognized selector sent to instance 0x5d8d580 

FriendMessage는 NSObject를 상속 사용자 정의 클래스이며, 메시지는 표준있는 NSString이다 *. 어떤 제공 도움을

덕분에

추신을 mapedd 코드가

답변

0

그것은 당신의 오류 'AccessibilityObjectWrapper이'가 거기 FriendMessage 객체 어떤 점에서되었을 수도 있지만, 지금은 사라 :

이것은 일반적 있음을 알려줍니다 말한다는 사실을 매우 읽을 수없는 경우 죄송합니다 코드의 어딘가에 누락 된 부분이 있기 때문입니다.

어디에서 FriendMessage 개체의 배열을 만들 수 있습니까? 질문을 편집하고 해당 코드를 추가 할 수 있습니까?

감사합니다.

0

내 chatMessageArray 즉, 내 FriendMessages 객체에 대한 컨테이너 인 viewDidLoad의 클래스 변수가 작성되었으며 코드에서 해제하지 않습니다. chatMessageArray 인터넷에서 XML로 채워지는 경우 처음에는 모든 것을 올바르게 표시하지만 충돌 한 후에는 충돌이 발생합니다. 예를 들어, "0Suspendise ..."와 같이 "0"을 입력하면 메시지가 나타납니다. searchdisplaycontroller는이 메시지를 보여 주지만 "S"를 입력하면 충돌합니다.

관련 문제