我正在以编程方式从我的视图控制器发送短信,但现在它显示状态栏和垂直黑线
我的代码:
- (IBAction)SendTextBtnTapped:(id)sender {
[self sendSMS:@"Body of SMS..." recipientList:[NSArray arrayWithObjects: nil]];
}
- (void)sendSMS:(NSString *)bodyOfMessage recipientList:(NSArray *)recipients
{
MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init];
if([MFMessageComposeViewController canSendText])
{
controller.body = bodyOfMessage;
controller.recipients = recipients;
controller.messageComposeDelegate = self;
[self presentModalViewController:controller animated:YES];
}
}
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
[self dismissModalViewControllerAnimated:YES];
if (result == MessageComposeResultCancelled)
NSLog(@"Message cancelled");
else if (result == MessageComposeResultSent)
NSLog(@"Message sent");
else
NSLog(@"Message failed");
}
答案 0 :(得分:1)
只需添加此行
即可controller.wantsFullScreenLayout = YES;
OR 在现有MessageViewController之后添加此行,如下所示..
[self presentModalViewController:controller animated:YES];
[[UIApplication sharedApplication] setStatusBarHidden:YES];
OR 对于整个视图控制器使用bellow loginin viewWillAppear:
粘贴此代码..
[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];
答案 1 :(得分:1)
我认为你可以使用wantsFullScreenLayout。
MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init];
if([MFMessageComposeViewController canSendText])
{
controller.body = bodyOfMessage;
controller.recipients = recipients;
controller.messageComposeDelegate = self;
controller.wantsFullScreenLayout = YES; //<== add this
[self presentModalViewController:controller animated:YES];
}