Подклассы UITableViewCell в UIStoryBoard - PullRequest
3 голосов
/ 02 ноября 2011

Я недавно начал новый проект с использованием iOS 5 с UIStoryBoards (потрясающая функция;)).Особенно велика возможность создавать статические ячейки в табличном представлении.Но тут начинается моя проблема.Я хочу настроить эти ячейки, используя подкласс UITableViewCell, и мне не нужно настраивать ячейку в каждом tableView со статическим содержимым.

Сначала я подумал, что все, что нужно, - это установить класс TableViewCell в MyCustomClass, нодизайн не используется.

Короче говоря: есть ли способ использовать подклассы UITableViewCell в качестве статического содержимого в UIStoryboard?Как рассказчик создает экземпляры клеток?(это не init () или initWithStyle ())

Заранее спасибо;)

Ответы [ 2 ]

2 голосов
/ 02 ноября 2011

Я действительно не знаю, есть ли способ использовать пользовательскую ячейку в конструкторе интерфейсов (возможно, это невозможно). UITableViewCells инициируются через initWithCoder: метод, как и любой другой объект, который соответствует протоколу NSCoding.

1 голос
/ 19 января 2012

Важно установить Идентификатор на панели инспектора в дополнение к настройке пользовательского класса. Затем, чтобы получить ваш новый дизайн, используйте:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
  static NSString *cellIdentifier = @"myCustomID";
  //New cell prototypes will be returned from the dequeue if none have been allocated yet.
  MySubclassCell* cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];

  if(cell == nil) {
    //This shouldn't happen but you can build manually to be safe.
    cell = [[MySubclassCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
  }

  return cell;
}

Снятие очереди создаст вам новую ячейку вместо необходимости выделять вашу собственную.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...