当前位置: 首页 > 面试题库 >

iOS。如何在每个UIViewController上启用和禁用旋转?

龚玄天
2023-03-14
问题内容

我有一个UIViewController,我想在不同情况下禁用或启用屏幕旋转

例:

if flag {
   rotateDevice = false
}
else {
   rotateDevice = true
}

我怎样才能做到这一点?


问题答案:

我有答案。在上AppDelegate,如果您旋转设备,按下ViewController等,则始终调用此函数

迅速 更新 3/4

func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask
{
    return self.restrictRotation
}

self.restrictRotation 是自定义参数。

如何使用:

在Appdelegate中:

 var restrictRotation:UIInterfaceOrientationMask = .portrait

在ViewController中:

调用方法ViewDidLoad或viewWillAppear时。我们将这样更改:

(UIApplication.shared.delegate as! AppDelegate).restrictRotation = .all

然后将在AppDelegate上调用此方法。

func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask


 类似资料:
  • 我创造了一个旋转器,它的工作很好。 我想要的只是,当我单击spinner时,它显示。我想要下拉列表。 如果有人需要更多关于旋转器的细节,我可以发布更多的细节。欢迎提出建议。

  • 我想只支持纵向视图。如何让React Native应用程序不自动旋转?我尝试搜索留档和Github问题,但没有找到任何有用的东西。

  • 问题内容: 5年前关闭。 我是一名Android开发人员。我也想使用ScrollView。此ScrollView需要一段时间禁用滚动功能并需要一段时间启用滚动功能。但是我无法禁用滚动功能。我如何实现它。请帮助我。也尝试使用一些代码,例如 要么 但这行不通。 问题答案: 试试这个 像这样创建您的CustomScrollview 在您的xml中 //“ com.example.demo”替换为您的包名

  • 我想对https://www.google.com/发出10个请求,但使用selenium和Python随机用户代理。我有一个循环,在这个循环中,我用随机的用户代理发出10个请求(使用假用户代理)。主要的问题是,对于每一个请求,web驱动程序是打开一个新的google chrome实例,我想在一个单一的实例中这样做,但与不同的用户代理。我怎样才能让这成为可能?1个谷歌chrome实例和10个随机用

  • 我有两个带有ImageIcon的JRadioButton。由于我使用的图像图标,我需要给出一个按钮被选中而另一个按钮未被选中的外观。为此,我尝试禁用另一个按钮,它会自动将ImageIcon更改为disabled外观。 问题是,当我点击禁用的JRadioButton时,什么都没有发生,甚至连JRadioButton上的ActionListener都没有被调用。 有没有一种方法可以通过直接单击禁用的J

  • 问题内容: 我可以使用启用自动重启功能,但是在停止容器后,如何关闭该属性? 我通常会运行网络服务器,通常会映射端口80: 但是有时候我想运行映像的较新版本,但又想保留旧容器。问题是,如果有多个带有的容器,则只会启动其中一个(随机?),因为它们都争用主机上的端口80。 问题答案: 您可以使用该选项(如@Shibashis所述),或更新重启策略(这需要docker 1.11或更高版本); 请参阅文档以