Мне нужен пользовательский cell
с label
и switch
. Теперь главная проблема заключается в том, что я не могу отобразить switch
. Я пробовал несколько методов, включая добавление switch
программно к ячейке accessoryView
.UISwitch не отображается в пользовательской ячейке UITableView
Я использовал 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
?
Вы пытались добавить его в cellForRowAtIndexPath? – anhtu
Да, и ничего не меняется. Что более неприятно, так это то, что я не понимаю, как элементы управления, добавленные из IB, не отображаются. – nightfixed