gpt4 book ai didi

objective-c - 只允许标签栏设置中的多个 View 中的一个 View 旋转

转载 作者:行者123 更新时间:2023-11-29 04:56:25 25 4
gpt4 key购买 nike

我有一个带有四个不同 View 的选项卡栏 Controller 。最近,我只想将旋转纳入我的一个观点。我在某处读到,对于选项卡 Controller ,所有 subview 都需要在方法 shouldAutoRotateToInterfaceOrientation: 中返回 YES。我已经完成了此操作并且一切正常,但是,我只想一个 View 进入横向模式,而不是全部。我似乎只能在全有或全无的情况下才能得到它,这意味着它要么全部旋转,要么没有。

最佳答案

将此添加到那些仅支持纵向模式的 VC 中:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
if (interfaceOrientation == UIDeviceOrientationPortrait || interfaceOrientation == UIDeviceOrientationPortraitUpsideDown)
{
return YES;
}
return NO;
}

将其添加到也支持横向的 VC 中:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

return YES;
}
<小时/>

上面的内容意味着您需要 4 个 VC 来控制选项卡,这不是您想要的。你还可以做的是在你的 mainVC 中创建一个额外的 bool 值,默认情况下是 NO 。然后,当您打开支持所有方向的特定 View 时,只需将该 bool 值设置为 YES 并执行以下代码:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

if (myBoolThatAllowsAllOrientations)
{
return YES;
}
if (interfaceOrientation == UIDeviceOrientationPortrait || interfaceOrientation == UIDeviceOrientationPortraitUpsideDown)
{
return YES;
}
return NO;
}

关于objective-c - 只允许标签栏设置中的多个 View 中的一个 View 旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7885865/

25 4 0