当前位置: 首页 > news >正文

贵池网站建设/新网站百度收录要几天

贵池网站建设,新网站百度收录要几天,找人做网站怕侵权,哪些网站做任务可以赚钱的最近我朋友代码出现一个问题,我看了下,发现已经是适配iOS那时候的问题了 如果你准备将你的老的 iOS 6 app 迁移到 iOS 7 上,那么你必须注意了。当你的老的 app 在 iOS 7 设备上运行时,所有ViewController 的视图都整体上移了&…

 

最近我朋友代码出现一个问题,我看了下,发现已经是适配iOS那时候的问题了

 

如果你准备将你的老的 iOS 6 app 迁移到 iOS 7 上,那么你必须注意了。当你的老的 app 在 iOS 7 设备上运行时,所有ViewController 的视图都整体上移了,因为 iOS 7 把整个屏幕高度(包括状态栏和导航栏)都作为了视图控制器的有效高度。于是你的视图上移了,并和上层的状态栏交叠在一起。

你当然可以在 Xcode 中修改每个 View,将他们下移20个像素(状态栏高度)或者64个像素(状态栏+导航栏高度)。

但是苹果显然已经考虑到这个问题,他们在 iOS 7 SDK 中为 ViewController 提供了一个 edgesForExtendedLayout 新属性。如果你将这个属性设置为UIRectEdgeNone,则 viewController 的所有子视图都会自动调整,这样在 iOS 7 下看到的效果和 iOS 6 完全一样。

为了方便,你可以为 UIViewController 扩展一个子类,并覆盖它的 viewDidLoad 方法:

@implementation DerivedViewController

- (void)viewDidLoad

{

    [superviewDidLoad];

if ([selfrespondsToSelector:@selector(edgesForExtendedLayout)])

       self.edgesForExtendedLayout = UIRectEdgeNone;

}

@end

然后你以后所有的 ViewController 都从这个 DerivedViewController 类继承。

但不幸的是,我们的程序仍然有大量 iOS<7 的用户 ,我们无法立即抛弃对 iOS 6 的支持。无论 edgesForExtendedLayout 还是UIRectEdgeNone,都只能在 iOS7 下有效。对于 iOS 6,我将以上代码修改为:

- (void)viewDidLoad

{

    [superviewDidLoad];

#if__IPHONE_OS_VERSION_MAX_ALLOWED >= 70000

    if ([selfrespondsToSelector:@selector(edgesForExtendedLayout)])

       self.edgesForExtendedLayout = UIRectEdgeNone;

#else

    float barHeight =0;

    if (!isIPad()&& ![[UIApplication sharedApplication] isStatusBarHidden]) {

       barHeight+=([[UIApplication sharedApplication]statusBarFrame]).size.height;

    }

    if(self.navigationController &&!self.navigationController.navigationBarHidden) {

       barHeight+=self.navigationController.navigationBar.frame.size.height;

    }

    for (UIView *viewin self.view.subviews) {

       

       if ([view isKindOfClass:[UIScrollView class]]) {

           view.frame = CGRectMake(view.frame.origin.x, view.frame.origin.y +barHeight, view.frame.size.width, view.frame.size.height - barHeight);

        } else {

           view.frame = CGRectMake(view.frame.origin.x, view.frame.origin.y +barHeight, view.frame.size.width, view.frame.size.height);

       }

    }

#endif

}

通过宏 __IPHONE_OS_VERSION_MAX_ALLOWED 判断 deployment target 是否 >7.0。>7.0则使用新的 edgesForExtendedLayout API,负责使用比较笨的方法逐个下移 subviews,并自动根据状态栏/导航栏的可视状态计算要移动的偏移量。

注:如果已升级至Xcode5,将导航控制器的 Top Bar 设置为一种“Opacque ...”(不透明)类型可解决此问题。

转载于:https://www.cnblogs.com/-Solo/p/5138762.html

http://www.lbrq.cn/news/945883.html

相关文章:

  • 龙岗网站建设服务/seo公司系统
  • 哪些香港网站不能访问/郑州seo技术培训班
  • 东莞市建设公共交易中心网站/seo关键词推广怎么做
  • 个人做众筹网站合法吗/网页设计制作
  • 厦门网站建设公司哪个好/定制建站网站建设
  • 嘉兴网站建设哪家好/seo体系百科
  • 网站空间指的是什么/怎样建立自己网站
  • 怎样优化网站排名靠前/百度引擎提交入口
  • 网站做微信支付/百度竞价返点开户
  • 制作网站的方法/网址搜索域名查询
  • 鄂尔多斯做网站/免费线上培训平台
  • 运城做网站/网络推广的优势
  • 注册公司名称查询/广州网站优化费用
  • 公司网站开发项目外包方案/网络营销的含义的理解
  • 一家公司做网站需要什么资料/关键词优化排名查询
  • 做网站公司简介模版/网站目录
  • 易捷商城小程序/杭州新站整站seo
  • 石家庄网站建设电话/网拍外宣怎么推广
  • 做淘宝客网站的流程/怎么自己做网站
  • 网站怎么做才可以做评价/seoyoon
  • 备案时填写 网站内容/网络推广软文范文
  • 建站行业严重产能过剩/微博推广平台
  • 网站做可信认证多少钱/网站排名软件
  • 顺义做网站的公司/产品市场营销策划方案
  • 有什么网站专门做美食的吗/seo收费还是免费
  • 左权网站建设/seo教程优化
  • 做微信商城网站/郑州seo方案
  • 网站公司怎么做运营/三叶草gy5987
  • 学怎么做建筑标书哪个网站/自动外链工具
  • 给企业做网站挣钱吗/seo网站优化推广费用
  • 基于深度学习的图像分类:使用Inception-v3实现高效分类
  • deepseek本地部署,轻松实现编程自由
  • day33:零基础学嵌入式之网络——TCP并发服务器
  • 算法:数组part02: 209. 长度最小的子数组 +
  • DNS 协议
  • 100条常用SQL语句大全