【问题标题】:UIImageview/UIVIew in UIWindow cannot rotate to landscapeUIWindow 中的 UIImageview/UIVIew 无法旋转到横向
【发布时间】:2014-08-04 09:23:41
【问题描述】:

在我的 AppDelegate 中,我有一个这样的 uiwindow。在里面,有 uiimageview 作为背景。

问题是当 iPad 旋转并且状态栏也已经处于横向位置时,那些 Imageview 没有旋转。我可以知道怎么做吗?

已编辑:如果我听到方向变化,我的图像视图会旋转,但我想将该图像视图设置为设备的原点 (0,0)。但是,它看起来像 uiwindow 在水平位置偏移。现在,我将图像视图的原点设置为 uiwindow 的原点。然后,我的图像视图也偏移了。我该怎么办?

【问题讨论】:

    标签: ios objective-c uiimageview rotation uiwindow


    【解决方案1】:

    这是正确的行为。 UIWindow 对象不支持旋转。
    为此,您应该自己轮换它们,以收听UIDeviceOrientationDidChangeNotification 通知。
    在窗口中管理旋转有点棘手,还因为在旋转动画期间,您应该能够检测旋转方向以获得良好的用户体验。
    在我看来,如果您将图像视图嵌入到视图控制器的视图中会更好。

    【讨论】:

    • 谢谢。稍后我将制作 self.window.rootviewcontroller = loginVC 等。但是,在我的 uiwindow 中,我希望将 uiimageview 作为背景。我正在尝试设置图像视图的框架,但这是错误的(如我编辑的问题中所述)。我该怎么办?
    • 我告诉你这很棘手,因为即使你旋转窗口的坐标系总是在同一个物理角度
    • 是的。因为图像视图右侧似乎可以覆盖 uiwindow,我认为这是可能的。只有原点偏移。我会试试你的方法。
    • 这是为数不多的在 UIWindow 上创建警报视图的自定义库之一,您可以查看其源代码以检查旋转机制中的灵感github.com/hfossli/AGWindowView
    • 哇..如此简单和强大..谢谢谢谢。我现在正在使用它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 2010-10-21
    • 1970-01-01
    相关资源
    最近更新 更多