我不知道为什么会这样.它对我来说是正确的.我写了另一个UIAlertView,它看起来很好,一旦我删除了它,它就错误地写了我写的那个.我正在尝试按照本教程.
这是在我的viewcontroller.m中
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
switch (result) {
case MessageComposeResultCancelled:
NSLog(@"Cancelled");
break;
case MessageComposeResultFailed:
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Welcome To My App" message:@"This app will ... First you need to ..." delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil];
[alert show];
[alert release];
break;
case MessageComposeResultSent:
break;
default:
break;
}
[self dismissModalViewControllerAnimated:YES];
}
Run Code Online (Sandbox Code Playgroud)
错误显示在它的许多行上,例如:在消息发送表达式的开头缺少"[".(如果我把它放在它想要在initWithTitle之后放另一个和另一个和另一个:)
下一个错误是:使用未声明的标识符'alert'(在show和release中说明)
知道发生了什么事吗?提前致谢.
尝试在包含多行的case语句中添加括号.
- (void)messageComposeViewController:(MFMessageComposeViewController
*)controller didFinishWithResult:(MessageComposeResult)result {
switch (result) {
case MessageComposeResultCancelled:
NSLog(@"Cancelled");
break;
case MessageComposeResultFailed: {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Welcome To My App" message:@"This app will ... First you need to ..." delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil];
[alert show];
[alert release];
break;
}
case MessageComposeResultSent:
break;
default:
break; }
[self dismissModalViewControllerAnimated:YES]; }
Run Code Online (Sandbox Code Playgroud)