プロジェクトの 1 つで UIViewController コンテインメント機能を使用しようとしています。アプリは横向きモードでのみ使用することを意図しています。
UIViewController Aを UIViewController Bの子として追加し、Aのメイン ビューをBのビューの 1 つのサブビューとして追加します。A への参照も B に保存しています。
@interface BViewController : UIViewController
@property (retain, nonatomic) AViewController *aVC;
@end
@implementation BViewController : UIViewController
- (void)viewDidLoad
{
[super viewDidLoad];
self.aVC = [self.storyBoard instantiateViewControllerWithIdentifier:@"A"];
[self addChildViewController:self.aVC];
[self.myContainerView addSubview:self.aVC.view];
}
@end
私が抱えている問題は、横向きが尊重されていないことです。私はいくつかのデバッグを行い、解決策を見つけましたが、ハックのようなものであるため、理想的ではないことを恐れています:
B:
- (void)viewDidLoad
{
[super viewDidLoad];
self.aVC = [self.storyBoard instantiateViewControllerWithIdentifier:@"A"];
[self addChildViewController:self.aVC];
[self.myContainerView addSubview:self.aVC.view];
[self.aVC didMoveToParentViewController:self];
}
A:
- (void)didMoveToParentViewController:(UIViewController *)parentVC
{
// Interchange width and height
self.view.frame = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, self.view.frame.size.**height**, self.view.frame.size.**width**);
}
ここで何か不足していますか?