私のアプリは、UIModalPresentationFormSheet と UIModalTransitionStyleCrossDissolve を完全に無視しています。常にフルスクリーンで、デフォルトのトランジションでポップアップします。
それは私の実際のアプリでそれを行います。次に、空のテスト アプリを作成しましたが、同じことを行います。
非常に単純です。私の AppDelegate は KBViewController をルート ビューとしてロードします。KBViewController は、空のビュー コントローラー (KBModalViewController) を提示しようとします。KBModalViewController.xib のビューは「FormSheet」サイズに設定されています
私のビューコントローラ:
@implementation KBViewController
-(void)viewDidAppear:(BOOL)animated{
[self setModalPresentationStyle:UIModalPresentationFormSheet];
[self setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
KBModalViewController *m = [[KBModalViewController alloc] initWithNibName:nil bundle:nil];
[self presentViewController:m animated:YES completion:nil];
//Also tried the depreciated presentModalViewController, same result
//[self presentModalViewController:m animated:YES];
}
Xcode 4.61 を使用しています。私は、iPad 5.1、iPad 6.1、および 6.1 上の実際の iPad 2 にコンパイルしました。すべて同じです。