簡體   English   中英

如何在Landscape iPhone應用中運行電子郵件/短信?

[英]How to run email/sms in landscape iPhone app?

我有一個iPhone應用程序,僅在橫向模式下運行,但是最近我想添加郵件/短信/ facebook功能(通過UIButton操作)。 最后一個運行平穩,我啟動了網絡瀏覽器(它自己管理人像模式),但是啟動郵件或短信作曲家卻讓我發瘋。 我只想僅在橫向模式下使用此應用程序,但不包括啟動mail / sms / fb(實際上是瀏覽器)。

當應用程序屏幕橫向放置時,我設法使縱向的郵件/短信編輯器處於垂直模式,但是鍵盤也橫向出現,這阻塞了編輯器的左/右一半-使用[composer setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];

我是在閱讀有關此主題的壞東西,還是我只是盲目;)-無論哪種方式,都需要任何幫助,謝謝

編輯:

我有一個覆蓋的根ViewController:

- (BOOL)shouldAutorotateToInterfaceOrientation

在兩種橫向模式下均返回“是”。 這個rootVC啟動了ShareVC,它具有3個用於mail / sms / fb的按鈕。 我希望實現啟動網頁瀏覽器之類的功能,該功能從縱向開始。 與郵件和短信相同,但使用模式視圖控制器,然后在發送郵件/短信后返回ShareVC ...
我還將plist中的方向設置為橫向模式。 希望這可以澄清我要做什么:)

嘗試將其添加到所需的ViewController中:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
  return interfaceOrientation==UIInterfaceOrientationLandscapeLeft;
}

我附近沒有Mac,因此可能有錯誤。

希望能幫助到你

解決的問題:)事實證明,我是在childVC而不是rootVC本身上調用present / dismiss modalViewController,這是代碼段:

-(IBAction)goMail{
    NSLog(@"gomail...");
    MFMailComposeViewController *picker = [[[MFMailComposeViewController alloc] init] autorelease];
    NSUserDefaults *settings = [NSUserDefaults standardUserDefaults];

    if ([MFMailComposeViewController canSendMail]) {
        picker.mailComposeDelegate = self;
        [picker setSubject:@"Hello iPhone!"];

        // Set up recipients
        NSArray *toRecipients = [NSArray arrayWithObject:@"aa@bb.com"];
        [picker setToRecipients:toRecipients];
        [picker setMessageBody:@"mail content..." isHTML:NO];
        [self.controller presentModalViewController:picker animated:YES];
        //[picker release];
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM