使用xib的UIView忽略大小类

时间:2016-06-11 10:02:43

标签: objective-c layout xib uiwindow size-classes

我正在开发自定义通知视图,该视图必须显示在所有内容上。要实现这个目标 我已经将它实现为单独UIWindow的子视图,除了布局外,一切正常:我使用大小类,布局只是忽略它。 这是代码 我用来设置我的观点:

NotificationView *notificationView = [[[NSBundle mainBundle] loadNibNamed:@"NotificationView"
                                                                    owner:self
                                                                  options:nil] firstObject];
UIWindow *window = [[UIWindow alloc] initWithFrame:frame];
// Additional window setup..

[window addSubview:notificationView];

2 个答案:

答案 0 :(得分:3)

UPD:我想通了

我直接将我的notificationView添加到UIWindow,在这种情况下,大小类会被忽略。然后我尝试实例化相应的UIViewController子类(虽然我并不真的需要它)并将其添加到self.view,在这种情况下,size类按预期工作。

结论:View必须位于UIViewController视图层次结构中才能支持大小类。

答案 1 :(得分:0)

您需要在代码中添加约束,以便在将两个视图添加到另一个视图之后关联它们。

请阅读此处了解更多信息:

https://adoptioncurve.net/archives/2014/08/working-with-size-classes-in-interface-builder/