我需要一个cell
和label
的自定义switch
。
现在,主要问题是我无法显示switch
。我尝试了几种方法,包括以编程方式将switch
添加到单元格的accessoryView
。
我使用IB,将switch
添加到单元格,连接IBOutlet
。我还尝试在单元格switch
中以编程方式添加awakeFromNib
:
- (void)awakeFromNib {
[super awakeFromNib];
if (!self.fieldSwitch) {
self.fieldSwitch = [[UISwitch alloc] init];
[self.fieldSwitch addTarget:self action:@selector(switchUpdatedValue:) forControlEvents:UIControlEventValueChanged];
self.fieldSwitch.onTintColor = [ColorManager sharedInstance].genericSwitchColor;
self.accessoryView = self.fieldSwitch;
}
}
这绝对没有效果;我还尝试将其作为子视图添加到单元格的contentView
,然后调用bringSubviewToFront:
。再一次,没有成功。
我查了一下,self
,accessoryView
,fieldSwitch
没有一个是nil
。
有没有人知道会出现什么问题?在旁注中,是否有人理解为什么默认情况下会从IB
添加控件?
答案 0 :(得分:1)
如果使用大小类,则必须为UISwitch设置约束。例如,如果您使用Any Any size类并将UISwitch放置在单元格中,则它实际上可能显示在远离右侧的位置。 (我想发布此作为评论,但不足以代表)