Я использую следующие 2 способа вернуть пользовательскую ячейку:Как правильно запустить пользовательский UITableviewCell?
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *key = [self keyForIndexPath:indexPath];
UITableViewCell *cell;
if ([key isEqualToString:DoneButtonCellKey]) {
cell = [self [self doneButtonCellForIndexPath:indexPath];
return cell;
} else {
//code to return default cell...
}
}
Тогда:
- (DoneButtonCell *)doneButtonCellForIndexPath: (NSIndexPath *)indexPath {
DoneButtonCell *cell = [self.tableView dequeueReusableCellWithIdentifier:DoneButtonCellIdentifier forIndexPath:indexPath];
return cell;
}
Что такое правильный метод инициализации для использования с ячейкой здесь, так что я могу изменить некоторые свойства ячейка, когда она инициализируется?
EDIT: Я нашел проблему, поскольку методы init/awakeFromNib не вызывались для меня. Я обнаружил ошибку, и я не изменил «Пользовательский класс» из UITableViewCell в свой собственный класс. Теперь awakeFromNib И initWithCoder работают, как описано ниже.
ячейки уже init'd внутри '' dequeueReusablCellWithIdentiier: метод, вы можете изменить все эти параметры, прежде чем вернуть его! , какие параметры вы хотите настроить? –
Я надеялся, что я могу настроить несколько вещей, включая текст label.numberOfLines или backgroundColor и т. Д. Но это все, что я не хочу делать каждый раз, когда создаю ячейку. –
Я вас понимаю, тогда вы должны сделать это в классе DoneButtonCell, в методе awakeFromNib, я отправлю ответ, чтобы показать вам, как –