Не удается получить доступ к моему классу переопределенных ячеек

Я использую стороннюю структуру. где мне нужно переопределить класс ячейки. поэтому я создал подкласс. и регистрации класса ячейки в viewDidLoad()методе. но проблема заключается в том, что в суперклассе они также регистрируют свой layoutIfNeeded()метод соты и вызова viewDidLoad. Поэтому мой класс не вызвал. Здесь я ищу решение.

Редактировать:

Код суперкласса

- (void)viewDidLoad {
    [super viewDidLoad];
    [self reloadData];

    [tableView registerNib:[UINib nibWithNibName:@"BUserCell" bundle:[NSBundle chatUIBundle]] forCellReuseIdentifier:bUserCellIdentifier];

    [self setGroupNameHidden:YES duration:0];
}

Код суперкласса, где setGroupNameHiddenесть layoutIfNeeded()код. и, что более важно, это не общедоступный метод.

Мой код:

override func viewDidLoad() {
    super.viewDidLoad()
    self.title = "New Conversation"
    self.tableView.register(UINib.init(nibName: "NewConversationContactCell", bundle: Bundle.main), forCellReuseIdentifier: "bUserCellIdentifier")
    self.tableView.reloadData()
}

Как я уже сказал, класс ячейки суперкласса вызывается, если я прокомментировал setGroupNameHidden:duration:метод, а затем вызвал мой класс ячейки.

ios,objective-c,swift,inheritance,

0

Ответов: 2


0

вы можете просто игнорировать вызов super.viewDidLoad()

есть другой способ - переопределить setGroupNameHidden:duration:метод (при необходимости оставить его пустым)


0

Отсутствуют вызовы делегатов. замещать

self.tableView.reloadData()

с

self.tableView.delgate = self
self.tableView.dataSource = self
self.tableView.reloadData()
ИОС, Objective-C, быстрое, наследование,
Похожие вопросы
Яндекс.Метрика