日常错误问题小记

162 阅读1分钟

很多问题都是在日常的开发中才会出现,不断地记录才能在下次碰到的时候,不要再摔一跤。

1.cell中使用Masonry布局出现的问题
[self.contentView addSubview:self.baseView];
[self.baseView mas_makeConstraints:^(MASConstraintMaker *make) {
  make.edges.mas_equalTo(self.contentView);
}];

如果约束在 self上面,而不是self.contentview上,就会出现子控件消失,因为在tableViewcollectionview中,cell都是复用的,导致self.frame是变化的,尤其是,我在此次的场景中使用了瀑布流,自定义了flowlayout,导致该bug的出现。self.contentview.frame是固定的,不管是否复用,都不会变化.所以应该把约束加载self.contentview上。

2.xib出现无法连线情况
[<NSObject 0x600002da2f40> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key `属性名称`

image.png

注意:上图中 File's Owner中不需要绑定类,只需要当前父视图绑定具体类即可。

image.png

如果是赋值之前的控件,没有更改控件名称就会出现上述报错问题。且视图连接的是父视图,不是File's Owner,在父视图和File's Owner都必须是当前指定的类名。