0

[self.window setRootViewController:top];本当に必要ですか?ECSlidingViewControllerを使用していますが、iOS6の自動回転で動作させることができません。ECSlidingViewControllerクラスでは、次のようにサブビューを追加します。

[self.view addSubview: _topViewController.view];

完全にスタックしている自動回転メソッドを有効にするにはどうすればよいですか?どうもありがとう。

4

1 に答える 1

2

ウィンドウのルートビューコントローラを設定するか、コントローラのサブビューをウィンドウに追加する必要があります。iOS 3以前をサポートしようとしているのでない限り、前者をサポートする必要があります。つまり、はい、[self.window setRootViewController:top];必要です。

子コントローラーの自動ローテーションを有効にするには、次のような子ビューコントローラーのメソッドを使用する必要があります。

[_topViewController willMoveToParentViewController:self];
[self addChildViewController:_topViewController];
[self.view addSubview: _topViewController.view];
[_topViewController didMoveToParentViewController:self];

オーバーライドする必要があるかもしれません-[shouldAutomaticallyForwardRotationMethods]が、デフォルトの実装ではYESおそらくオーバーライドしないでしょう。

于 2013-01-06T16:18:28.000 に答える