Interface Builderで UIView を作成しviewFromIB
、ViewController の読み込み時に非表示にしました。別の UIView を作成しています。それを と呼びましょうmodalViewType
。コードを使用して、それを のサブビューとして追加しますself.navigationController.view
。
UIView *modalViewType = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
modalViewType.opaque = NO;
modalViewType.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.6f];
[self.navigationController.view addSubview:modalViewType];
今、私は非表示を解除し、サブビューとしてviewFromIB
追加し、メソッドを使用して前面に表示しています。が、見えているのに見えなくなっている。コードは次のとおりです。viewFromIB
modalViewType
viewFromIB
bringSubviewToFront:
viewFromIB
modalViewType
viewFromIB.hidden = NO;
viewFromIB.layer.masksToBounds = YES;
viewFromIB.center = CGPointMake(modalViewType.frame.size.width/2, modalViewType.frame.size.height/2);
[modalViewType addSubview:viewFromIB];
[modalViewType bringSubviewToFront:viewFromIB];
参考までに、これは iOS6 では正常に機能していましたが、iOS7 では癇癪を起こしています。他の情報が必要な場合はお知らせください。どうもありがとう。
更新: modalViewType
UIView を使用せずに再表示するviewFromIB
と、bringSubviewToFront:
正常にself.view
動作します。のサブビューを追加しようとしている場合にのみ問題がありmodalViewType
ます。私のサブビューのフレームは完全に論理的です。