1、 声明变量时,声明我们自定义类的变量,使用strong来声明,如果声明成weak,则在上下滚动的时候,刷新不出来数据
总结如下:
copy用于NSString类型
strong 用于一般对象
weak 用于UI对象
assign 用于基本数据类型
2、 新建一个继承自UITableViewCell的类,控制器一定要继承自UITableViewCell,否则不加载,修改stroyboard中tableview的class为控制器类名
3、 Label显示很多数据是,需要设置多行显示
textView.numberOfLines = 0;
4、 某个控件出不来原因:
frame的尺寸和位置对不对
初始化方法中不设置控件的frame,即使是设置了,也都是0
hidden是否为yes
有没有添加到父控件中
alpha是否为0
被其他控件挡住了
父控件的前面为这5个情况
5、懒加载时,数据数组比较多,先是将字典数组转换成数据模型数组,在将数据模型数组数据赋值给frame模型中数据属性,数组比较多,要区分开
-(NSArray *)statusFrameArray
{
if (_statusFrameArray == nil) {
NSString *path = [[NSBundle mainBundle]pathForResource:@"statuses.plist" ofType:nil];
NSArray *dictArray = [NSArray arrayWithContentsOfFile:path];
NSMutableArray *tempArray = [NSMutableArray array];
for (NSDictionary *dict in dictArray) {
status *s = [status statusInitWithDict:dict];
statusFrame *sFrame = [[statusFrame alloc]init];
sFrame.status = s;
[tempArray addObject:sFrame];//容易出错,添加的是sFrame
}
_statusFrameArray = tempArray;//容易出错
}
return _statusFrameArray;
}