вы можете просто игнорировать вызов super.viewDidLoad()
есть другой способ - переопределить setGroupNameHidden:duration:
метод (при необходимости оставить его пустым)
Я использую стороннюю структуру. где мне нужно переопределить класс ячейки. поэтому я создал подкласс. и регистрации класса ячейки в 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,