iOS 常见错误

 

1. mutating method sent to immutable object'

从字面上理解:可变的消息发给了不可变的对象。比如NSDictionary类型的对象调用setValue方法.应该把NSDictionary 改成NSMutableDictionary类型。


2.Local declaration of 'content' hides instance variable


一般是函数里面定义的变量和class属性变量重名了。很少有和系统变量重名的情况。


3.unrecognized selector sent to instance 

大部分情况下是因为对象被提前release了,在不希望他release的情况下,指针还在,对象已经不在了。

很多时候,是因为init初始化函数中,对属性赋值没有使用self.foo赋值,而是直接对foo赋值,导致属性对象没有retain(心里以为retain了),而提前释放。

4.使用ASIHTTPRequest编译不通过

原因是一些类库没有加进去。把这些库加进去CFNetwork, SystemConfiguration, MobileCoreServices, and libz.dylib

5.添加在UIView中的UIButton   单击不起作用

原因是UIbutton的frame超出了UIView的frame范围。事实上UIView并没有设置frame,设置完后( 范围一定要在UIButton之外),UIButton单击就可以了

6.当使用presentViewController和dismissPresentViewController时,如果报这个错 : while  presentation is in progress ,修改方法为[mainView dismissModalViewControllerAnimated:NO];  将参数Animated改为NO;如果报这个错while a presentation or dismiss is in progress,试试这样

 if (![[mainView modalViewController] isBeingDismissed]) {
        [mainView dismissModalViewControllerAnimated:NO];
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值