1

私は、iOS4.x で問題なく動作するアプリを持っていますが、ほとんどの点で iOS5.0 で動作します。ただし、「メール送信」機能に問題があることに気付きました。

iPad 用の UIPopoverController に MFMailComposerViewController があります。これは iOS4.x では問題なく動作しますが、iOS5.0 では、(たとえば) 送信先の電子メール アドレスを入力するためにキーボードがポップアップすると、UIPopoverController が画面外にアニメーション表示されます。キーボードが閉じられると、UIPopoverController がアニメーションで画面に戻ります。良さそうに見えますが、あまり役に立ちません。これは iOS4.x では発生しません。

キーボードがポップオーバーのどの部分も覆わないように、UIPopoverController のコンテンツ サイズを変更しようとしましたが、それでも画面から移動します。以下のコード スニペット。私が見ていないのは明らかなことだと考えなければなりません。どんなアイデアでも大歓迎です。

テスト中にシミュレーターでこの動作が見られることを追加する必要があります-iOS5.0を実行しているiPadを持っていません。

MFMailComposeViewController *mailController;

mailController = [[[MFMailComposeViewController alloc] init] autorelease];
mailController.mailComposeDelegate = self;

[mailController setSubject:@"email subject"];
[mailController setMessageBody:@"email message body" isHTML:NO];

[[[UIApplication sharedApplication] keyWindow] setRootViewController:self];

mailPopoverController = [[UIPopoverController alloc] initWithContentViewController: mailController];
[mailPopoverController setDelegate:self];

[mailPopoverController presentPopoverFromRect:CGRectMake(keyWindow.bounds.size.width / 2.0, 0.0f, 1.0f, 1.0f)
                                       inView:self.view
                     permittedArrowDirections:UIPopoverArrowDirectionUp
                                     animated:NO];
4

0 に答える 0