#iphone #cell
#iPhone #ячейка
Вопрос:
я создал пользовательскую ячейку в файле nib с помощью делегата.
Я определил a .h и .m для пользовательской ячейки:
@interface InscriptionCustomCell : UITableViewCell {
IBOutlet UILabel *titreCell;
IBOutlet UITextField *contenuCell;
}
@свойство (неатомное, сохранить) UILabel *titreCell; @свойство (неатомное, сохранить) UITextField *Ячейка содержимого;
@end
И когда я пытаюсь использовать его с моим TableView:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"InscriptionCustomCell";
InscriptionCustomCell *cell = (InscriptionCustomCell*) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
//[cell.textLabel setText:@"Cell"];
// Configure the cell...
if(indexPath.section ==0)
{
[cell.titreCell setText:[model.listModuleInfoPerso objectAtIndex:indexPath.row]];
[cell.contenuCell setPlaceholder:[model.listModuleInfoPerso objectAtIndex:indexPath.row]];
}else {
[cell.titreCell setText:[model.listModuleInfoSupp objectAtIndex:indexPath.row]];
[cell.contenuCell setPlaceholder:[model.listModuleInfoSupp objectAtIndex:indexPath.row]];
}
return cell;
}
У меня ошибка:
reason: '-[UITableViewCell titreCell]: unrecognized selector sent to instance 0x4b5f430'
Почему? Моя пользовательская ячейка — это собственный оператор!
Ответ №1:
Это неправильно:
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
Вы создаете экземпляр UITableViewCell, а не свою пользовательскую ячейку.
Ответ №2:
if (cell == nil) {
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"MyCell"owner:self options:nil];
cell = [nib objectAtIndex:0];
}