设为首页 加入收藏

TOP

iPhone5 分辨率编程小结
2014-11-24 02:58:06 来源: 作者: 【 】 浏览:0
Tags:iPhone5 分辨率 编程 小结

因为iPhone5 的新分辨率,最近大家都忙着在更新应用以支持新的分辨率,虽然新版的xcode4.5 可以直接在xib里面创建 4寸屏的view,但实际上它却没那么智能,它支持4寸屏了,但拉出的控件即便是在4寸屏幕的环境下它的frame值仍然是以4寸屏幕为基础的,也就是说如果你的view的frame 为 (0,0,320,548),设置了高度宽度适应,它在3.5寸屏幕环境运行的时候这个view的值仍然是(0,0.320,548),就算它的值看起来在3.5寸下完全显示,但请不要被它的假像所蒙骗了.


有可能你觉得这个值没什么关系,当然,如果你的所有控件都是通过xib拉出来的,那没什么.但很多时候情况并不是那么简单,有时你要将一个view通过代码放在一个你想要的位置,那时候你就需要它的坐标了.在以前,你可以把它写死,因为以前是统一分辨率,但现在不同了.不同分辨率下控件的坐标和大小要进行调整.


在controller的viewDidLoad 或者 loadView方法中设定 self.view.frame


Objective-c代码
//适应屏幕分辨率
CGRect frame = self.view.frame;
frame.size.height = [UIScreen mainScreen].bounds.size.height - 20;
self.view.frame = frame;


因为在当前界面是带有状态栏,所以在高度那里减去20 ,如果是带有导航条的,就再减去44,如果带有tabbar的,就减去48
在此方法设定之后,controller 的 view.frame就是实际当中的大小,也就是说它的值是准确的,那接下来加入其他view的时候一切的计算都将会变得简单很多.
比如创建一个tableView,上边距为20,下边距20


Objective-c代码
UITableView *tableView = [[UITableView alloc]initWithFrame:CGRectMake(0, 20, 320, self.view.frame.size.height - 40) style:UITableViewStylePlain];
[self.view addSubview:tableView];


效果如下:


4寸屏幕


iPhone5 分辨率编程小结


3.5寸屏


iPhone5 分辨率编程小结


推荐阅读:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇最简单破解Xcode,切换破解状态 下一篇iOS Block小结

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: