iPad横屏模式研究

在iPad应用开发时如何让设备只支持横屏(landscape)模式,我做了多次尝试,并没有发现比较简捷的设置方法。我尝试了大概大概3种方式。 
1、通过XCode设置“iPad Deployment info”,只选择横屏左和横屏右,部署测试后并没有生效,这种方法实质是在xxx_info.plist项目配置文件中添加如下信息: 
<key>UISupportedInterfaceOrientations~ipad</key> 
<array> 
<string>UIInterfaceOrientationLandscapeLeft</string> 
<string>UIInterfaceOrientationLandscapeRight</string> 
</array> 
2、通过对每个nib文件在IB中设置orientation为landscape,此法也不生效。 
3、重载shouldAutorotateToInterfaceOrientation:方法,这种方式是可行的。具体如下: 
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 

    // Return YES for supported orientations 
return ((interfaceOrientation ==UIDeviceOrientationLandscapeLeft)||(interfaceOrientation ==UIDeviceOrientationLandscapeRight)); 

如果第一种方式生效,那么比较完美。虽然第三种方式可以完全满足横屏的需求,但是实现起来比较stupid,需要在每个controller中都重载shouldAutorotateToInterfaceOrientation:方法,当然也可以通过扩展UIViewController的方式来避免重复劳动。但是感觉也有点不太直接,期待有人指出sdk本身是否就有简捷方式支持。

iPad的界面布局好多时候都要做两套------横屏和竖屏,但在界面切换时,该让哪个布局显示就要判断了,有多种方法,我记录下我用的一种,感觉比较方便: 
          NSNotificationCenter *nc = [NSNotificationCenter defaultCenter]; //Get the notification centre for the app 
    [nc addObserver:self //Add yourself as an observer 
           selector:@selector(orientationChanged) 
               name:UIDeviceOrientationDidChangeNotification 
             object:nil];//这个函数用来获取当前设备的方向, 
- (void)orientationChanged 

    //UIView *ftView = [self.view viewWithTag:200]; 
    if([[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeLeft || [[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeRight)//判断左右 
    { 
         //界面的新布局 
    } 
    if([[UIDevice currentDevice] orientation] == UIInterfaceOrientationPortrait )//我有个方向不支持,如果想都支持那就不要这个if条件就行了 
    { 
         //界面的新布局 
    } 
}

iOS 5 上真机测试过了。很方便,用过后才能体会到,这里不多说了!

iPad横屏模式研究

时间: 2024-10-01 02:41:02

iPad横屏模式研究的相关文章

IOS 应用中从竖屏模式强制转换为横屏模式

在 iPhone 应用里,有时我们想强行把显示模式从纵屏改为横屏(反之亦然),CocoaChina 会员 "alienblue" 为我们提供了两种思路 第一种:通过人为的办法改变view.transform的属性. 具体办法: view.transform一般是View的旋转,拉伸移动等属性,类似view.layer.transform,区别在于View.transform是二维的,也就是使用仿射的办法通常就是带有前缀CGAffineTransform的类(可以到API文档里面搜索这个

google 分屏 横屏模式 按home键界面错乱故障分析(二) 分屏的启动过程

google 进入分屏后在横屏模式按home键界面错乱(二) 你确定你了解分屏的整个流程? Android 关机对话框概率没有阴影故障分析 android recent key长按事件弹起触发最近列表故障分析 google 分屏 popup无法显示故障分析 分享此文便是对代码GG的支持,也是爱的表达方式,所以让爱来的猛烈些吧. 代码阅读,请到此处http://androidxref.com 查看原生代码 前情回顾: google 分屏 横屏模式 按home键界面错乱故障分析(一) 上一节我们主要

计算机信息管理专业“三化”人才培养模式研究

信息化关系到经济.社会.文化.政治和国家安全的全局,已成为未来发展的战略制高点,信息化水平是衡量一个国家和地区的国际竞争力.现代化程度.综合国力和经济成长能力的重要标志.随着我国信息化建设步伐的加快,信息管理工作已越来越受到企事业单位的重视,越来越多的单位开始建立自己的信息管理系统,并逐步将业务放到网络上进行.信息产业的发展,带动的是信息技术专业人才的强劲需求.据上海教育科学研究院的权威专家预测,信息技术人才被列入我国今后几年乃至10年急需八大类人才之一.同时,预计随着以云计算和物联网技术带来的

让应用在横屏模式下启动

让应用在横屏模式下启动 为了让应用从竖屏模式切换为横屏模式,我们得完成三件事情: 1. 更改设备的”Supported Device Orientations”设置; 2. 让Main.storyboard中的视图控制器中的view使用横屏显示; 3. 更改ViewController.m中的一行代码,允许视图控制器自动旋转到横屏模式. // Returns a Boolean value indicating whether the view controller'??s contents s

Win10 Mobile开始屏幕横屏模式怎么变?看看这款设计

微软坚信Win10 Mobile系统更加适合在小尺寸平板上使用,不过遗憾的是,Win10 Mobile开始屏幕并不支持横屏模式,因此许多情况下用户使用横屏模式回到开始屏幕后不得不手动转正屏幕方向,十分不方便. ▲Win10 Mobile开始屏幕概念设计 事实上,目前Windows10桌面系统的开始菜单排布已经为Windows 10 Mobile开始屏幕的横屏模式指明了方向娱乐 城,这样大家更熟悉.Sofoklis根据Win10统一特性带来了Win10移动版系统的开始屏幕的横屏概念设计. ▲Win

iPhone开发之在应用中从竖屏模式强制转换为横屏模式

1.强制横屏模式,百度上找到很多方法,但是真正能用到项目上的却少之又少,有的是iOS版本太低的时候出的,过时了:有的方法被Apple官方私有化了. 2.开发工具设置 3.代码实现的两种方法 (1) 此方法已经被Apple官方私有化,不能通过审核,但是用来实现简易测试非常方便 1 [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeLeft animated:NO]; (

IOS 在Ipad 横屏 上使用UIImagePickerController

转载前请注明来源:http://www.cnblogs.com/niit-soft-518/p/4381328.html 最近在写一个ipad的项目,该项目必须是横屏.进入正题,有一项功能是要调用系统的牌照和相册,于是本屌用了 UIImagePickerController,兴冲冲的运行了一下,呵呵,崩掉了,然后带着高逼格去查苹果文档,一堆英文,不懂,好吧,百度一下,发现好多同道中人说 UIImagePickerController必须要竖屏,不能横屏-这让我差点泪崩,又继续看苹果文档,发现了新

网页游戏运营模式研究

网页游戏的定义   网页游戏的英文名称为又称无客户端网络游戏,它是基于浏览器的网络在线多人互动的游戏,也是网络游戏的一种.这种游戏的特点是玩家无需下载游戏客户端及安装,只需短短的几秒钟就可打开网页用浏览器加载就能玩的网络游戏.尤其适合上班及没有时间休闲娱乐的人群,只要花一点点时间并且消费成本比较低,而且游戏内具有自动成长功能,玩家即使关掉电脑也可心满意足的去工作,如果想随时了解游戏内的具体情况,还有一些游戏具有短信提醒功能. 中国网页游戏从发展初期,再到如今的爆发式发展,中国网页游戏规模不断的扩

iOS Safari阅读模式研究

这是一篇在2013年准备的资料,现在分享出来,供有需要的同学参考. 要点 (1) 阅读模式的检测 在frame加载完成后,触发一个timer来检测是否可以使用阅读模式.检测的方式是使用JavaScriptCore framework的接口执行一段JS脚本,然后取JS中属性值来判断是否可以进入阅读模式.如果当前页面可以进入阅读模式,将在地址栏显示阅读模式切换按钮. (2) 阅读模式的执行 当用户点击阅读模式切换按钮时,会依次执行: i. 执行阅读模式检查脚本,判断目前是否可以进入阅读模式. ii.