代码之家  ›  专栏  ›  技术社区  ›  alexbw

强制autoresizingMask应用于UIView

  •  3
  • alexbw  · 技术社区  · 14 年前

    我有一个通知视图,我在启动后将其添加到应用程序的窗口中,因此它悬停在所有其他视图之上。

    当用户旋转设备时,视图不会像用户拥有的视图那样自动调整大小 UIViewController .

    autoresizingMask 要应用吗?或者,如何在设备旋转时调整没有视图控制器的视图的大小?

    3 回复  |  直到 9 年前
        1
  •  1
  •   Community CDub    8 年前

    我发现添加到应用程序窗口的视图甚至不会旋转,更不用说调整大小了。

    这是问和答 Orientation in a UIView added to a UIWindow :将通知视图添加到窗口的第一个子视图。

    UIWindow* window = [UIApplication sharedApplication].keyWindow;
    if (!window) 
        window = [[UIApplication sharedApplication].windows objectAtIndex:0];
    [[[window subviews] objectAtIndex:0] addSubview:myView];
    

    而且,它也解决了您的问题,您的通知视图现在应该根据其掩码调整大小。

        2
  •  0
  •   Brian    14 年前

    autoResizingMask本身与旋转无关。它只是定义了当视图的superview被调整大小时,视图应该如何调整大小。

    如果您添加一个顶级视图控制器,该控制器的视图大小与窗口相同,并且包含所有其他视图,则应该可以工作。然后,通知视图将是顶层视图(连接到视图控制器)的子视图,并且应该自动旋转。

        3
  •  0
  •   hotpaw2    14 年前

    你设置了:

    view.autoresizesSubviews = YES;