0

ビューコントローラーからプログラムでSMSを送信していますが、ステータスバーと黒い縦線が表示されています

私のコード:

- (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");
}

ここに画像の説明を入力

4

2 に答える 2

1

この行を追加するだけです

controller.wantsFullScreenLayout = YES;

または、以下のように現在の MessageViewController の後にこの行を追加します。

[self presentModalViewController:controller animated:YES];
[[UIApplication sharedApplication] setStatusBarHidden:YES];

または、このviewController全体で、次のlogininを使用してviewWillAppear:このコードを貼り付けます..

[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];
于 2012-12-03T11:01:54.343 に答える
1

wantFullScreenLayoutを使用できると思います。

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];
} 
于 2012-12-03T11:02:19.053 に答える