私のUIViewController
namedMainViewController
には、別のUIViewController
namedへの参照がありますSubViewController
。次のように定義されています。
@class SubViewController;
@interface MainViewController : UIViewController <UIScrollViewDelegate> {
SubViewController * _subViewController;
}
myのinitWithNibName:bundle:
メソッドでは、次のようMainViewController
に my を初期化SubViewController
します。
#pragma mark - Init
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil; {
if((self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])){
_subViewController = [[SubViewController alloc] initWithNibName:@"SubViewController" bundle:nil[;
// Forces the view to load, in an attempt to speed up the adding of the subview.
UIView * view = _subViewController.view;
view.alpha = 1.0f;
}
return self;
}
のviewDidLoad
メソッドが呼び出され、すべてがロードされているように見えますが、サブビューとしてSubViewController
追加すると:SubViewController
- (IBAction)showButtonPressed:(UIButton *)aButton; {
[self.view addSubview:_subViewController.view];
}
アプリの速度が数秒間低下した後、サブビューが追加され、すべて問題ありません。奇妙なことに、サブビューを削除して再度追加しようとすると、遅延はありません!
問題は読み込みの問題だと思いますが、これを解決する方法に関するドキュメントが見つかりません。
この速度低下の原因を説明できる人はいますか? ありがとう!