Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios iPad设备中的奇怪行为一直是横向倾斜的_Ios_Swift_Rotation_Device Orientation_Uideviceorientation - Fatal编程技术网

Ios iPad设备中的奇怪行为一直是横向倾斜的

Ios iPad设备中的奇怪行为一直是横向倾斜的,ios,swift,rotation,device-orientation,uideviceorientation,Ios,Swift,Rotation,Device Orientation,Uideviceorientation,当我水平倾斜iPad设备时,我会有一种奇怪的行为。 通知: NSNotificationCenter.defaultCenter().addObserver(self, selector: "MySelector", name: UIDeviceOrientationDidChangeNotification, object: nil) 已触发并调用“MySelector”,导致ui更新不可用。 有一种方法可以避免在设备水平倾斜时触发选择器?我从前面的问题中看到:--如果您不希望出现这样的通

当我水平倾斜iPad设备时,我会有一种奇怪的行为。 通知:

 NSNotificationCenter.defaultCenter().addObserver(self, selector: "MySelector", name: UIDeviceOrientationDidChangeNotification, object: nil)
已触发并调用“MySelector”,导致ui更新不可用。
有一种方法可以避免在设备水平倾斜时触发选择器?

我从前面的问题中看到:--如果您不希望出现这样的通知,那么您需要覆盖ViewDidEnglish方法并调用removeObserver()。我不确定这是否是你想要的答案,因为我在理解你最初的问题时遇到了一些困难。如果这是您想要知道的,请告诉我。

尝试在if条件下包装调用函数,以确保方向已更改。这是伪代码:

func MySelector
{
  if oldorientation != neworientation
  {
      do stuff
  }
}

如果此代码仍在触发,则意味着系统将很快进行纵向然后横向,您可能需要输入一个小计时器或其他东西来再次检查方向。

这样做将禁用方向翻转,我相信海报上说的是,如果他把一个设备平放在一个水平的表面上,他把屏幕抬起来,它仍然是水平的,它仍然会发出定向IDChange通知。嗯,好吧,我不认为这就是OP所说的问题。