Это демонстрация списка, аналогичного списку QQ. Представленная идея может служить основой.
Класс QKGroupListController
наследуется от UITableViewController
.
Внутри класса QKGroupListController
существует свойство словаря:
@property(nonatomic, strong) NSMutableDictionary *closeOrOpenValueDict; // Записывает значение bool текущего раздела, открытого или закрытого
Это свойство используется для записи состояния текущей группы — открыта она или закрыта.
Ниже представлен метод события при нажатии на группу:
#pragma mark ----- Одиночное событие >
- (void)myFriendGroupOpenOrClose:(UIButton *)sender {
[sender setSelected:!sender.selected];
NSMutableArray *keysArray = (NSMutableArray *)[self.closeOrOpenValueDict allKeys];
NSInteger index = sender.tag - 200;
NSIndexSet *indexSet = [NSIndexSet indexSetWithIndex:index];
if (![_keysArray containsObject:[@(index) stringValue]]) {
[_closeOrOpenValueDict setObject:@(MyFriendGroupOpen) forKey:[@(index) stringValue]];
} else {
NSNumber *status = [_closeOrOpenValueDict objectForKey:[@(index) stringValue]];
if ([status integerValue]) {
[_closeOrOpenValueDict setObject:@(MyFriendGroupClose) forKey:[@(index) stringValue]];
} else {
[_closeOrOpenValueDict setObject:@(MyFriendGroupOpen) forKey:[@(index) stringValue]];
}
}
[self.tableView reloadSections:indexSet withRowAnimation:UITableViewRowAnimationFade];
}
Для получения более подробной информации обратитесь к демо-примеру.
"Демо-эффект"
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )