【问题标题】:iPad Orientation Lock Notification?iPad 方向锁定通知?
【发布时间】:2010-04-16 21:18:09
【问题描述】:

有没有办法在 iPad 锁定方向时接收通知?当方向锁定设置为打开或关闭时,它会发送一个 receivedRotate: 通知,但我需要一种能够区分正常旋转和锁定“旋转”的方法。

问题是当旋转发生变化时,我正在旋转视图中的东西。当锁被激活时,iPad 会发送一个 receivedRotate: with UIInterfaceOrientationPortrait。

我在 UIDevice 中查看了类似 isOrientationLocked 的内容,但没有成功。

感谢您提供任何线索。

编辑:当 iPad 方向锁定打开时,它会发送通知,说明由于某种原因旋转变为纵向。这会导致元素旋转,因为它们随任何方向变化而旋转。这是我要防止的。

EDIT2:是的,iPad 不应该发送纵向通知,但它会发送。在这个肖像通知之后,iPad 停止发送通知,这是它应该的方式。这只是阻碍的初始通知。

我无法使用加速度计,因为我仍然希望能够使用方向锁的锁定功能。如果我有办法知道 iPad 何时被锁定,也许我会使用加速度计。

EDIT3: receivedRotate: 使用 UIInterfaceOrientationPortrait 调用所有方向。

【问题讨论】:

  • 也许一个更好的例子会有所帮助。您何时需要知道屏幕已锁定?目前,它提供方向,如果 iPad 被锁定,它不会改变。
  • 您找到解决方案了吗?我也需要一个。
  • 只是出于好奇,当您将 iPad 锁定在横向位置时,您会收到哪些通知?从用户的角度来看,它看起来是正确的,所以必须有另一个通知。

标签: iphone ipad locking orientation


【解决方案1】:

显然它现在正在工作。

我最近在安装最新的 XCode 和 iPhone SDK 后跳回了我的旧项目,并且在打开锁时我不再收到 UIInterfaceOrientationPortrait。根本没有更改我的代码,所以它一定是苹果。

【讨论】:

    【解决方案2】:

    为了清楚起见,您是否仅使用轮换通知来确定您的轮换?您不是从加速度计或类似设备中提取数据来确定您的方向吗?

    另一件事是,锁只是一个锁,如果您处于横向模式,它不应该强迫您进入纵向模式。它应该让你保持横向。

    因此,根据您所做的猜测,我可能会建议您确实不想将通知用作界面的基础,而是直接使用加速度计数据。

    作为一个新的 iPad 用户,我可能想知道您在做什么,因为当我的身体方向不“正常”(例如躺在沙发上)时,我认为锁定是一种保持方向不变的方式。

    【讨论】:

      猜你喜欢
      • 2012-01-15
      • 1970-01-01
      • 2011-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多