#iphone #three20
#iPhone #three20
Вопрос:
Как я могу изменить пользовательский нижний колонтитул three20 Load More в TTThumbsViewController?
Ответ №1:
TTThumbsViewController — это необычный TTTableViewController, что означает, что он использует TTDataSource. Лучший способ для этого — наследовать от TTThumbsViewController и переопределить это сообщение (это то, которое использует TTThumbsViewController) :
- (id<TTTableViewDataSource>)createDataSource {
return [[[TTThumbsDataSource alloc] initWithPhotoSource:_photoSource delegate:self] autorelease];
}
Затем реализуйте источник данных, который наследуется от TTThumbsDataSource, и переопределите это сообщение следующим образом:
- (Class)tableView:(UITableView*)tableView cellClassForObject:(id)object {
if ([object isKindOfClass:[TTTableMoreButton class]]) {
return [YOU_CLASS class];
} else {
return [super tableView:tableView cellClassForObject:object];
}
}
Что происходит за кулисами, так это то, что datasources решает, нужно ли загружать больше изображений, если это так, он добавляет элемент TTTableMoreButton в список элементов, которые необходимо отобразить. Предоставив ему свой собственный класс ячейки, вы можете полностью переопределить внешний вид этой ячейки.