Как изменить высоту TTTableMoreButton?

#iphone #ios #three20

#iPhone #iOS #three20

Вопрос:

Есть ли способ изменить высоту TTTableMoreButton без создания нового класса ItemClass для TTTableMoreButton и возврата этого класса в функции

 - (Class)tableView:(UITableView *)tableView cellClassForObject:(id)object
  

Огромное спасибо. Пожалуйста, дайте мне знать, если это невозможно.

Приветствую, Микки

Комментарии:

1. Нет, я не думаю, что это возможно.

Ответ №1:

Имейте в виду, что вы не будете изменять высоту TTTableMoreButton , а скорее измените высоту TTTableMoreButtonCell , которая связана с TTTableMoreButton . Правильный способ сделать то, чего, я думаю, вы пытаетесь достичь, — создать подкласс обоих TTTableMoreButton и TTTableMoreButtonCell , переопределить

   (CGFloat)tableView:(UITableView*)tableView rowHeightForObject:(id)object;
  

функция в вашем TTTableMoreButtonCell подклассе, а затем внутри вашего источника данных, обязательно сопоставьте два класса, как вы сами упомянули, например:

 - (Class)tableView:(UITableView *)tableView cellClassForObject:(id)object {
  if ([object isKindOfClass:[CustomItem class]]) {
    return [CustomItemCell class];
  } else {
    return [super tableView:tableView cellClassForObject:object];
  }
}
  

HTH

Комментарии:

1. Отличный ответ. Также отличный дизайн Three20, соответствующий принципу «Открыто-закрыто».