- 浏览: 903827 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (466)
- iPhone, iOS , Objective-c (155)
- 数据库 (20)
- 设计模式 (5)
- 第三方包管理,cocoapod (2)
- 版本管理, SVN, Subversion, Git (1)
- Google, Android, Java (14)
- Wordpress (1)
- 职业素养 (3)
- 版本管理,git (3)
- 前端小技巧 (2)
- flash (1)
- javascript (5)
- Ruby (0)
- 编程语言 (1)
- 网络常识 (1)
- 找到生活好感觉 (5)
- 产品经理 (1)
- markdown (1)
- 云服务器 (1)
- iPhone (116)
- iOS (116)
- Objective-c (116)
- 学习技巧 (2)
- Google (5)
- Android (6)
- Java (21)
- python (1)
- sqlite (3)
- node.js (2)
- mongodb (2)
- 学习技巧,阅读 (2)
- 软件测试 (3)
- 架构设计 (2)
- 设计 (1)
- Spring framework (3)
- junit (1)
- Linux (2)
- 软件 (1)
- Struts2 (1)
- 版本管理 (3)
- SVN (3)
- Subversion (3)
- Git (3)
- mysql (5)
- quartz (1)
- 无关技术 (1)
- 前端 (1)
- Redis (1)
- 产品管理 (0)
- 计算机常识 (1)
- 计算机科学 (0)
- swift (1)
- 服务器 (2)
- 搜索 (1)
- Scala (1)
- J2EE (1)
- maven (1)
- 前端css (1)
- 英语 (1)
- 消息队列 (1)
- kafka (0)
- apache kafka (4)
- netbeans (1)
- IDE (2)
- 歌词 (1)
- 过滤器实现 (1)
- linux vim vi (1)
- jmeter (1)
- springcloud (1)
最新评论
-
hujingnemo:
不知道为什么打不开
CHM如何改编字体大小 -
weiboyuan:
求答案 weiboyuanios@163.com
iOS软件工程师面试题(高级) -
xueji5368:
这个现在已经广泛使用了嘛!
RoboGuice入门 -
Yao__Shun__Yu:
...
CHM如何改编字体大小 -
353144886:
非常之详细 美女求认识
sqlite数据类型 datetime处理
在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 上真机测试过了。很方便,用过后才能体会到,这里不多说了!
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 上真机测试过了。很方便,用过后才能体会到,这里不多说了!
发表评论
-
UIImage变为NSData并进行压缩
2014-05-19 20:23 1928//sdk中提供了方法可以直接调用 UIImage *im ... -
update cocapods
2014-05-17 22:27 800早上更新cocoapod依赖库,发现更新到32.1版本,早先的 ... -
iOS发送短信息代码实例
2014-05-16 18:15 2686#import <MessageUI/Message ... -
DISPATCH TIMER
2014-05-14 16:12 729/* __block void (^callback) ... -
UITextField左边显示图片
2014-05-13 18:08 1170The overlay view displayed on t ... -
iOS调用系统打电话,发短信功能
2014-05-11 15:48 2084先介绍一种最简单的方法: 调用打电话功能 [[UIAppl ... -
iOS面试题
2014-05-09 16:10 10771.写一下UIButton与UITableView的层级结构 ... -
socket二进制报文
2014-05-09 15:18 1300里面有帧头 字符串UTF-8 中间用0隔开 又一个字符串 ... -
将网站添加到桌面的方法
2014-05-08 14:25 1661<link href="http://www. ... -
iPhone通讯录联系人操作大全
2014-05-07 10:29 14591.需要引入AddressBook.framework框架 2 ... -
sqlite获取最新插入的rowid
2014-05-07 09:59 1521除了 last_insert_rowid select max ... -
号码归属地查询,拨打电话
2014-05-06 15:07 845在程序内调用拨打电话的方法,[[UIApplication s ... -
iOS时间合并
2014-04-28 17:55 1093合并同一时间的课程,同一时间可能有多个课程,比如13:30-1 ... -
vCard通讯录格式说明
2014-04-28 16:47 2556原帖:http://freesoftman.iteye.com ... -
UISearchBar背景色全套解决方案
2014-04-25 09:36 7442os系统升级到7.1后,原来在7.0下显示正常的UISearc ... -
升级XCode5.1.1遇到的奇葩问题NSString,NSObjectRuntime.h报错,Foundation找不到
2014-04-24 11:19 896升级XCode5.1.1遇到的奇葩问题NSString,NSO ... -
将NSString转为NSArray
2014-04-22 16:52 6269// Your JSON data: NSString *c ... -
另外一种NSData转为NSString的方法
2014-04-22 15:40 1211If the data is not null-termina ... -
HTTP,Socket,WebSocket异同
2014-04-18 16:54 1832参考文章: http://abbshr.g ... -
push隐藏UINavigtaionBar和UITabbar
2014-04-17 15:20 1091[self.navigationController setN ...
相关推荐
在iOS开发中,设备的横竖屏适配是...总的来说,这个Demo提供了一个纯代码实现iPad横竖屏适配的例子,开发者可以通过研究和实践这个项目,掌握在Swift中处理屏幕方向变化的技巧,从而创建更加灵活和适应性强的iOS应用。
来源: Licence: MIT 作者: 海阔天空 iPad版简易框架-仅作为横屏 当点击不同的TabBar切换时,能够保留每个Controller的状态
在高度上,iPhone和iPad横屏是Compact,竖屏时iPhone是Compact,iPad是Regular。 对于图片处理展示,Swift提供了UIImageView类,我们可以通过设置UIImageView的image属性来显示图片。但是,为了适应不同屏幕尺寸,...
而我希望平板是横屏的,来查看fragment在宽屏上的应用效果,这竖屏的平板感觉只是放大版的手机~ 本来设计的两个fragment在竖屏的平板上看都“太瘦”了,反而有些奇怪,影响学习体验。 搜索博客找解决方案,上面全都...
在iOS开发中,有时我们需要特定的UIViewController在显示时强制处于横屏模式,特别是在展示全屏媒体内容或游戏等场景下。本篇文章将深入探讨如何在iOS应用中实现"强制子ViewController为横屏"的需求,同时确保父...
ipad开发的时候遇到遇到一个问题,项目需要横屏,但是打开相册的时候,相册只支持竖屏显示,所以程序就会崩掉。在网上找了很久,找到一个解决方案。就是在appDelegate里面重新支持屏幕显示方式,写一个单例类来管理...
iPad 的屏幕方向可以分为竖屏和横屏两种。在竖屏模式下,屏幕方向是竖直的,而在横屏模式下,屏幕方向是水平的。 为了实现横竖屏切换,我们可以使用 UIView 中的 layoutSubviews 方法。当 UIView 设置为自动适配...
所以,在iPad横屏模式下,背景变为绿色,`portrait`元素被隐藏。 通过这种方式,我们可以根据iPad的方向动态地改变页面的样式,以提供更好的用户体验。这种方法适用于那些希望在不同设备方向下有不同视觉效果或者...
iOS支持两种主要的屏幕方向:Portrait(竖屏)和Landscape(横屏),其中又分为Left和Right,分别对应横屏时屏幕的左边缘或右边缘朝上。在开发中,我们通常通过两种方式来控制这些方向: 1. **Info.plist配置**: ...
本文将详细介绍如何通过JavaScript(简称JS)来判断iPad、Android等移动设备当前处于横屏还是竖屏状态。此方法适用于Web应用开发场景下,对用户界面进行适配,提升用户体验。 #### 二、核心原理 在移动端开发中,...
iOS系统提供了两种基本的屏幕方向:portrait(竖屏)和landscape(横屏)。每个应用都有一个或多个界面,这些界面可能需要根据设备的物理方向来动态调整布局。在iOS中,我们主要通过以下几种方式来处理屏幕方向的...
通过配置不同的Size Classes,可以为不同的设备类型(如iPhone横屏、iPhone竖屏、iPad横屏和iPad竖屏)设置不同的布局。 然而,从iOS 8开始,苹果引入了 Adaptive UI,它包含Launch Screens 和 Trait Collections。...
iPad有多种分辨率和显示比例,因此在设计时要确保游戏适应各种尺寸的设备,同时考虑到横屏模式下的用户体验。我们可以使用Auto Layout和Size Classes来实现自适应布局,使得游戏界面在不同设备上都能正确显示。 接...
中国最流行的iPhone/iPad下载...完美实现iPad横屏 实现重力感应支持横屏,让iPad用户想怎么摆弄就怎么摆弄,只要你喜欢。 AppStore正版资源下载 PP装机助手融合了破解版应用下载,更可链接AppStore直接下载正版资源。
其实主要是通过window....Andriod横屏$(“body”).attr(“class”, “landscape”);orientation = ‘landscape’;return false;}else if (window.orientation == 0 || window.orientation == 180) {//ipad、iphone
比如,对于紧凑宽度(比如iPhone竖屏)和宽广宽度(比如iPad横屏)的界面,可能会有不同的约束设置,使得UI元素能够在各种尺寸的屏幕上正确显示。 3. **代码动态调整布局**:除了在Interface Builder中设置约束,...
在iPad横屏模式下,主视图通常显示在左侧,详情视图显示在右侧;而在竖屏模式下,主视图可能会被折叠起来,只显示详情视图。MGSplitViewController的优势在于其高度可定制性,开发者可以根据需求调整这两部分视图的...
`UIPageViewController`有两种数据模式:`UIPageViewControllerSpineLocationMin`和`UIPageViewControllerSpineLocationMax`,分别表示两页并排显示(如iPad横屏)和单页全屏显示(如iPhone或iPad竖屏)。...
- Popover在iPad横屏模式下可能无法正确显示,需要根据设备方向调整布局。 - 在iPhone上模拟popover时,确保用户能清楚地看到关闭按钮或交互区域。 通过以上内容,你应该对UIPopoverController的基本使用有了全面的...