最有效的方法是:@H_301_8@
在willRotatetoInterfaceOrIEntation:duration:@H_301_8@
方法中将方向存储起来:@H_301_8@
DrviceOrIEntation = toInterfaceOrIEntation;@H_301_8@
然后在别的方法中使用
@H_301_8@
@H_301_8@
方法一:
直接获取设备的方法:self.interfaceOrIEntation
方法二:
通过下面的方法:
UIDeviceOrIEntation DO = [[UIDevice currentDevice]orIEntation];
、、、、、、、、、、、方法1、2当在模拟器中运行时,刚开始获得的设备方向为UnKNow、、、、、、、、、、、、、、、、、@H_301_8@
方法三
[[UIScreenmainScreen] applicationFrame].size.height [[UIScreenmainScreen] applicationFrame].size.wIDth 可以用来获取当前屏幕的尺寸,高和宽。由于系统的状态条占高20且总是在屏幕上方,它使得上面两个值在横竖屏的时候有变化,因此可用来判断当前是横屏还是竖屏。 简单的说竖屏时,height为1004,wIDth为768。 横屏时,height为1024,wIDth为748。 当然,前提是你没有把系统的状态栏去掉.它可以用在任何方法内作为判断条件. 应用示例如下: if (loadingvIEw ==nil) { loadingvIEw = [[UIVIEwalloc] initWithFrame:CGRectMake(284,402,200,200)]; if ([[UIScreenmainScreen] applicationFrame].size.height==1024) { loadingvIEw.frame=CGRectMake(412,264,200);//此时为横屏 } [loadingvIEwsetBackgroundcolor:[UIcolorclearcolor]]; //创建loadingvIEw的时候根据当前横竖屏设定位置。 方法四 在论坛里已经有人发过了 呵呵 //下面则是直接以屏幕方向判断 - (voID)willAnimateRotationToInterfaceOrIEntation:(UIInterfaceOrIEntation)interfaceOrIEntation duration:(NSTimeInterval)duration { switch (interfaceOrIEntation) { caseUIInterfaceOrIEntationPortrait: //home健在下 loadingvIEw.frame=CGRectMake(284,200); [self.vIEwaddSubvIEw:loadingvIEw]; break; caseUIInterfaceOrIEntationPortraitUpsIDeDown: //home健在上 loadingvIEw.frame=CGRectMake(284,200); [self.vIEwaddSubvIEw:loadingvIEw]; break; caseUIInterfaceOrIEntationLandscapeleft: //home健在左 loadingvIEw.frame=CGRectMake(412,200); [self.vIEwaddSubvIEw:loadingvIEw]; break; caseUIInterfaceOrIEntationLandscapeRight: //home健在右 loadingvIEw.frame=CGRectMake(412,200); [self.vIEwaddSubvIEw:loadingvIEw]; break; default: break; } } 总结以上是内存溢出为你收集整理的判断ipad横竖屏的方法 ----- 持续改进中 -----全部内容,希望文章能够帮你解决判断ipad横竖屏的方法 ----- 持续改进中 -----所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)