내 화면에 UIAlertview show를 호출하는 클래스를 만듭니다. 다른 클래스에서 UIAlert 함수를 작성합니다. 이 두 클래스는 모두 내 viewController 클래스이 아닙니다.clickedButtonAtIndex를 추가하여 UIAlertView에 충돌이 발생했습니다.
필자는 plist 파일에 텍스트를 저장하기 위해이 UIAlert (내부 UIText 필드)를 사용합니다. 나는 .H에 UIAlertViewDelegate을 추가하는 방법 "clickedButtonAtIndex"을 무시하기 전에
- (void)doAlert
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Message" delegate:self cancelButtonTitle:@"Done" otherButtonTitles:nil];
alert.alertViewStyle = UIAlertViewStylePlainTextInput;
[alert show];
}
//this makes crash!
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
self.storyFlow.text = [alertView textFieldAtIndex:0].text;
}
: 여기
#import "Story.h"
@implementation Story
...
+ (void)stage1
{
AlertClass *pointer = [AlertClass new];
[pointer doAlert];
}
는 클래스 AlertClass.m 파일입니다 : 여기
는 UIAlert 호출하는 클래스입니다 , 잘 작동합니다. 그러나 UITextfield의 일부 데이터를 경고보기에 저장해야합니다. 충돌이 발생하고 다음과 같이 응답하는 메시지를 알 수 없습니다.
이 문제를 해결하는 데 도움을주십시오. 감사.
[충돌 그림] https://dl.dropbox.com/u/47381923/crash.tiff
이미지를 제공하는 것이 최선의 해결책은 아닙니다 ... 적어도 jpeg 또는 png 일 경우 ...하지만 TIFF입니다! 음, 어쨌든 ... 원시 어셈블리 대신에, 스택 트레이스를 복사하면 더 좋을 것입니다. –
alertview의 텍스트가 유효하고 동시에 self.storyFlow가 초기화되고 null이 아닌지 여부를 확인 했습니까? –