나는 txts 파일의 버튼 텍스트로 UIActionSheet를 생성합니다. [CFString ISEQUAL :] -NSLocalizedStringFromTable 충돌
*** : 메시지 할당이 해제 된 경우 0x11fae00
이를 보내 내가 NO를 YES와 NSDeallocateZombies에 NSZombieEnabled, NSDebuEnabled을 설정 한 후, 나는 메시지와 함께 브레이크 포인트를 얻을 수 즉시가 아니라 UIActionSheet를 세 번째 또는 네 번째에 표시 한 후에 발생합니다. 코드는 이런 일이 발생했다 :
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:NSLocalizedStringFromTable(@"text", @"class", @"text")
delegate:self cancelButtonTitle:nil destructiveButtonTitle:nil
otherButtonTitles:NSLocalizedStringFromTable(@"text1", @"class", @"text1"),
NSLocalizedStringFromTable(@"text2", @"class", @"text2"),
NSLocalizedStringFromTable(@"text3", @"class", @"text3"), nil];
[actionSheet showFromTabBar:self.tabBarController.tabBar];
[actionSheet release];
내가 NSDealocateZombies을 제거하면, 시뮬레이터에서 더 이상 충돌이없는,하지만 난 콘솔에 경고를 얻을 :
이[CFString이 _cfTypeID] : 메시지로 전송 할당 취소 된 인스턴스
이러한 문제가 발생 했습니까? 리소스에서 문자열을 반복적으로 가져 오는 것이 잘못 되었습니까? 마지막 해결책으로 멤버 변수에 한 번 넣으려고 했으므로 동일한 텍스트에 대해 NSLocalizedStringFromTable에 대한 또 다른 호출을 피할 수 있습니다.