objective-c – 如何在iPad上旋转时停止模态视图的消失?

objective-c – 如何在iPad上旋转时停止模态视图的消失?,第1张

概述当我的iPad旋转时,我正在使用willRotateToInterfaceOrientation来交换视图.如果我在设备旋转并交换视图时打开了模态视图或警报视图,则视图交换并且警报消失并且不会再次出现,即使警报稍后再次“显示”. 编辑: 我已经把这个问题缩小了一点.当使用UIModalPresentationFullScreen呈现模态视图时,模态视图“幸存”旋转. 我该怎么做才能解决这个问题? 当我的iPad旋转时,我正在使用willRotatetoInterfaceOrIEntation来交换视图.如果我在设备旋转并交换视图时打开了模态视图或警报视图,则视图交换并且警报消失并且不会再次出现,即使警报稍后再次“显示”.

编辑:
我已经把这个问题缩小了一点.当使用UIModalPresentationFullScreen呈现模态视图时,模态视图“幸存”旋转.

我该怎么做才能解决这个问题?

这是我对willRotatetoInterfaceOrIEntation的实现:

- (voID) willRotatetoInterfaceOrIEntation:(UIInterfaceOrIEntation)toInterfaceOrIEntation duration:(NSTimeInterval)duration{[super willRotatetoInterfaceOrIEntation:toInterfaceOrIEntation duration:duration];////  Load an alternate vIEw depending on the orIEntation//if (toInterfaceOrIEntation == UIInterfaceOrIEntationLandscapeleft) {    [UIVIEw beginAnimations:@"" context:nil];    [self setVIEw:theLandscapeVIEw];    self.vIEw.bounds = CGRectMake(0,1024,768);    self.vIEw.transform = CGAffinetransformMakeRotation(kdegreesToradians * (-90));    [UIVIEw commitAnimations];      }else if (toInterfaceOrIEntation == UIInterfaceOrIEntationLandscapeRight) {    [UIVIEw beginAnimations:@"" context:nil];    [self setVIEw:theLandscapeVIEw];    self.vIEw.bounds = CGRectMake(0,768);     self.vIEw.transform = CGAffinetransformMakeRotation(kdegreesToradians * (90));    [UIVIEw commitAnimations];}else if (toInterfaceOrIEntation == UIInterfaceOrIEntationPortrait) {    [UIVIEw beginAnimations:@"" context:nil];    [self setVIEw:thePortraitVIEw];    self.vIEw.transform = CGAffinetransformMakeRotation(kdegreesToradians * (0));    self.vIEw.bounds = CGRectMake(0,768,1024);    [UIVIEw commitAnimations];}else if (toInterfaceOrIEntation == UIInterfaceOrIEntationPortraitUpsIDeDown) {    [UIVIEw beginAnimations:@"" context:nil];    [self setVIEw:thePortraitVIEw];    self.vIEw.transform = CGAffinetransformMakeRotation(kdegreesToradians * (180));    self.vIEw.bounds = CGRectMake(0,1024);    [UIVIEw commitAnimations];}   }
@R_301_6120@ 如果我解决了这个问题,我会做以下其中一项

>将备用视图添加到父视图,而不是更改视图属性
>为不需要完整视图交换的视图创建设计,但重新排列或隐藏视图的子元素.
>显示层次结构的根VIEwController中的任何模态

为了方向,我会非常努力不完全换掉视图.即使你已经解决了这个问题,它似乎还会继续存在问题.

总结

以上是内存溢出为你收集整理的objective-c – 如何在iPad上旋转时停止模态视图的消失?全部内容,希望文章能够帮你解决objective-c – 如何在iPad上旋转时停止模态视图的消失?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1082949.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存