iPhone开发 常见问题

1. 如果你把类写好了,Outlet也声明了,Interface Builder中的File's owner类型也指定到这个类了,那么当你的控件关联不到那些出口的时候,请注意你的头文件有没有保存,没有保存的头文件是识别不到那些属性的,同样的道理,你指定File's Owner的类型指定不到你写的类的时候也是因为这个问题。

2. ObjC中类成员变量必须用设置器和访问器才能够设置或者访问该变量。声明属性retain表示为其赋值时retain一次,nonatomic表示不启用多线程特性,copy表示拷贝(跟引用计数器区别),assign一般用于简单类型(可不写)??

3. 常见调试提示信息:
       “EXC_BAD_ACCESS”属内存泄露问题,如果是标准C中空指针问题,则IDE会指向该位置,如果没有指向,则检查自上一次正确运行以来,添加或修改的代码中release、alloc、赋值数组初始化等容易引起错误的位置;

       “EXC_BAD_INSTRUCTION”错误,检测nib文件中控制与类中输出口关联问题,例如view没有关联,控件关联了不存在的出口或方法,拥有Tab Bar的页面除了页面的Owner要检查Tab Bar上面的按钮的Owner也要检查,如果数组中存在两个对象引用了同一块内存地址,那么向该数组对象发送indexOfObject消息的时候也有可能产生这个异常信号;

       在拥有TableView的类中如果程序在[super viewDidLoad];崩溃,则检查TableView数据源协议中表单元绘制函数里,cell、text显示类型是否NSString类型,image类型是否匹配等等。

       gdb是一个很强大的工具,在Unix下面写C的同志们肯定很熟悉这个工具,这个强大的调试工具同样支持ObjC,并且X-CODE的IDE调试也本就是基于这个工具的,所以放心使用吧!

你可能感兴趣的:(iphone,工具,interface,多线程,file,ide)