码迷,mamicode.com
首页 > 移动开发 > 详细

ios 开发小记 (三)

时间:2015-09-20 23:59:44      阅读:532      评论:0      收藏:0      [点我收藏+]

标签:

platform :ios, ‘7.0‘

pod "AFNetworking", "~> 2.0"

pods 文件原来是这样。

在用了xctest之后,就报错了:AFNetworking Cause Error while using XCTest in Xcode5。

要在中间加一句:

link_with ‘Supermark‘, ‘SupermarkTests‘

 

 

 -objc 的意思:
之所以使用该标志,和Objective-C的一个重要特性:类别(category)有关。根据这里的解释,Unix的标准静态库实现和Objective-C的动态特性之间有一些冲突:Objective-C没有为每个函数(或者方法)定义链接符号,它只为每个类创建链接符号。这样当在一个静态库中使用类别来扩展已有类的时候,链接器不知道如何把类原有的方法和类别中的方法整合起来,就会导致你调用类别中的方法时,出现"selector not recognized",也就是找不到方法定义的错误。为了解决这个问题,引入了-ObjC标志,它的作用就是将静态库中所有的和对象相关的文件都加载进来。
 
 
 
ios 全局包含的头文件
.pch
 
 
arc 和 非 arc 混用的时候:
如果是arc中使用非arc的,对不需要arc的文件添加: -fno-objc-arc。编译标示。
 
 
 
xcode的group如何与文件夹对应:(双击show in finder能直接显示该文件夹)
直接删除这个group,记得选reference,不要move to trash。
然后整个文件夹添加进来即可。
注意:这样文件夹里面的所有文件的编译选项需要重新设置,后期慎用这个功能。
 
 
 
warning:
Automatic Preferred Max Layout Width is not available on iOS versions prior to 8.0
 
UILabel 的 使用了 Preferred Max Layout Width 這個屬性造成 numberOfLines 屬性只要不是  1 就會造成這個警告
 解决方案:
1升级到ios8以上 
2把label的这个选项值修改为非默认值
 
 
uiviewcontroller view 的生命周期
UIViewController的view是lazy loading的,当你访问其view属性的时候,它会从xib文件载入或者通过代码创建(覆盖loadView方法,自定义其view hierarchy),并返回view对象,如果要判断一个View Controller的view是否已经被加载需要通过其提供的isViewLoaded方法来判断。 
view加载后viewDidLoad会被调用,这里可以进行一些数据的请求或加载,用来更新你的界面。 
 
view将被加入view hierarchy中的时候viewWillAppear会被调用,view完成加入的时候viewDidAppear会被调用,同样当view将要从view hierarchy中移除的时候viewWillDisappear会被调用,完成移除的时候viewDidDisappear会被调用。 
当内存紧张的时候,所有的UIViewController对象的didReceiveMemoryWarning会被调用,其默认实现是 如果当前viewController的view的superview是nil的话,则将view释放且viewDidUnload会被调用,viewDidUnload中你可以进行后继的内存清理工作(主要是界面元素的释放,当再次加载的时候需要重建)。
 
 
 
controller之间的关系:
其实显示或者旋转的回调的触发的源头来自于window,一个app首先有一个主window,初始化的时候需要给这个主window指定一个rootViewController,window会将显示相关的回调(viewWillAppear:, viewWillDisappear:, viewDidAppear:, or viewDidDisappear: )以及旋转相关的回调(willRotateToInterfaceOrientation:duration: ,willAnimateRotationToInterfaceOrientation:duration:, didRotateFromInterfaceOrientation:)传递给rootViewController。rootViewController需要再将这些callbacks的调用传递给它的Child View Controllers。
 
 
 
以上内容有部分来自互联网,侵权请联系我(留言、评论均可),马上删除。
 
 
 

ios 开发小记 (三)

标签:

原文地址:http://www.cnblogs.com/loying/p/4824532.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!