错了,默认是strong reference,IBOutlet的属性一般可以设为weak是因为它已经被view引用了,除非view被释放,否则IBOutlet的属性也不会被释放,另外IBOutlet属性的生命周期和view应该是一致的,所以IBOutlet属性一般设为weak。

解决方案 »

  1.   


    默认是weak或strong可能跟xcode版本有关,或工程的类型有关,我用过2个不同版本的xcode,默认生成的就是不一样,不能一概而论。楼主下次一定要记得说明下开发环境噢
      

  2.   

    在这里推荐一篇博文,你看下吧
    http://www.cnblogs.com/scorpiozj/p/3337710.html
      

  3.   

    如果拥有者必须“拥有”对象的指针,因此属性应设置为strong。而其他的IBOutlet对象的属性需要设置为weak,因为拥有者并不需要“拥有”他们的指针。举例来说,UIViewController的view属性是strong,因为controller要直接拥有view。而添加到view上的subviews,作为IBOutlet只需要设置为weak就可以了,因为他们不是controller直接拥有的。直接拥有subviews的是controller的view,ARC会帮助管理内存。