我通常使用xib在TableViews
中使用Swift自定义单元格。在dequeuereusablecellwithidentifier
中,我可以轻松访问单元格的出口。
我正在开发一个项目,我在其中为一个带有微调器的视图创建了一个XIB(微调器是自定义的并且是一个视图)。我在视图控制器中加载了所有视图,它工作正常:
XIB
#import "HomeScreenView.h"
@interface HomeScreenView()
@property (weak, nonatomic) IBOutlet UIView *contentView;
@property (weak, nonatomic) IBOutlet UIImageView *backgroundImage;
@property (weak, nonatomic) IBOutlet UIImageView *spinner;
@end
@implementation HomeScreenView
-(instancetype)initWithCoder:(NSCoder *)aDecoder{
self = [super initWithCoder:aDecoder];
return self;
}
-(instancetype)initWithFrame:(CGRect)frame{
self = [super initWithFrame:frame];
}
@end
ViewController.m
HomeScreenView *homeScreen = [[[NSBundle mainBundle] loadNibNamed:@"HomeScreenView" owner:self options:nil] firstObject];
homeScreen.frame = self.view.bounds;
_loadingView = homeScreen;
[self.view addSubview:_loadingView];
在ViewController.m
中,我无法访问插座的微调器:例如homeScreen.spinner
未自动完成。
在Swift中,对于自定义单元格,我知道我们加载文件并实例化单元格并进行转换。由于我不熟悉ObjC,我对如何处理xib的出口感到有点困惑。