Ios 在interface builder中使用现有自定义UIView

Ios 在interface builder中使用现有自定义UIView,ios,objective-c,interface-builder,xib,Ios,Objective C,Interface Builder,Xib,我创建了一个UIView子类,因为我需要一些定制的东西 然后,我在一个XIB上添加了UIView,并将的类从UIView更改为自定义类。当我运行时,它不会实例化自定义类 我该怎么办?将使用哪个构造函数实例化自定义类?从XIB创建UIView时调用的方法是 - (id) initWithCoder:(NSCoder *)aCoder xib将使用 - (id)initWithCoder:(NSCoder *)decoder 如果您依赖于xib中的连接和其他对象可用,那么您也可以将代码添加到 -

我创建了一个UIView子类,因为我需要一些定制的东西

然后,我在一个XIB上添加了UIView,并将的类从UIView更改为自定义类。当我运行时,它不会实例化自定义类


我该怎么办?将使用哪个构造函数实例化自定义类?

从XIB创建UIView时调用的方法是

- (id) initWithCoder:(NSCoder *)aCoder

xib
将使用

- (id)initWithCoder:(NSCoder *)decoder
如果您依赖于
xib
中的连接和其他对象可用,那么您也可以将代码添加到

- (void)awakeFromNib
当对象
。。。保证其所有插座和动作连接都已建立。


要处理代码重复,可以执行以下操作

- (instancetype)initWithFrame:(CGRect)frame
{
  self = [super initWithFrame:frame];
  if (self) {
    [self commonInit];
  }
  return self;
}

- (instancetype)initWithCoder:(NSCoder *)aDecoder
{
  self = [super initWithCoder:aDecoder];
  if (self) {
    [self commonInit];
  }
  return self;
}

- (void)commonInit
{
  // any common setup
}

没有自定义构造函数,如何检查未启动的构造函数?