1.在view不是很复杂的情况下,如果多次检查后依旧出现coding-compliant这种情况,干脆彻底删除这个xib重新新建一个xib来做一遍。(至今未明真相)
2.初始化xib中的view的大致步骤:
//在superView中调用此方法以初始化此view
+ (XTTopFloatingView*)instanceXTTopFloatingView{
NSArray *nibView = [[NSBundle mainBundle]loadNibNamed:@"XTTopFloatingView" owner:nil options:nil];
return [nibView lastObject];
} //初始化时必须调用的方法
- (id)initWithCoder:(NSCoder *)aDecoder{
self = [super initWithCoder:aDecoder];
if (self) {
}
return self;
}
//可以在这里对view进行调整,此方法可选
- (void)awakeFromNib{ }
//superView中对view的调用,大致如下
- (void)viewWillAppear:(BOOL)animated{
//create floating view
XTTopFloatingView *floatingView = [XTTopFloatingView instanceXTTopFloatingView];
floatingView.frame = CGRectMake(, , WIDTH(self.view),);
[self.view addSubview:floatingView];
[self.view bringSubviewToFront:floatingView];
}
3.如果view需要响应事件,且将view添加到superView后,view不响应事件,可以尝试将view的addSubview动作的相关代码添加到superView的viewWillAppear中。