Ответ 1
сделайте как в swift3 для получения дополнительной информации см. this
expandableTableView.reloadSections(IndexSet(integer: gestureRecognizer.view!.tag), with: .automatic)
У меня есть код, написанный в объекте c.I хочу преобразовать этот код в код swift3.
[_expandableTableView reloadSections:[NSIndexSet indexSetWithIndex:gestureRecognizer.view.tag] withRowAnimation:UITableViewRowAnimationAutomatic];
После преобразования с помощью онлайн-инструмента он дал мне код ниже, но он не работает.
expandableTableView.reloadSections(IndexSet(index: gestureRecognizer.view!.tag), with: .automatic)
Скажите, пожалуйста, как это сделать?
сделайте как в swift3 для получения дополнительной информации см. this
expandableTableView.reloadSections(IndexSet(integer: gestureRecognizer.view!.tag), with: .automatic)
Обновить раздел в Swift 3.0
i.e Перезагрузка 0-й секции в 0-й раздел, поскольку tableview имеет по умолчанию один раздел, индекс которого равен 0.
//let myRange: ClosedRange = 0...0
self.tableViewPostComments.reloadSections(IndexSet(integersIn: 0...0), with: UITableViewRowAnimation.top)
Обратите внимание, что после преобразования NSIndexSet
стало IndexSet
. IndexSet - это наложение Swift в рамки Foundation для NSIndexSet:
Наложение Swift в рамки Foundation предоставляет IndexSet структура, которая соединяет класс NSIndexSet и его изменяемый подкласс, NSMutableIndexSet. Тип значения IndexSet предлагает тот же как ссылочный тип NSIndexSet, и эти два могут быть используется взаимозаменяемо в коде Swift, который взаимодействует с Objective-CAPI-интерфейсы. Такое поведение похоже на то, как Swift соединяет стандартную строку, числовые и типы сбора в соответствующий соответствующий Фонд классы.
Если вы отметили описание сигнатуры метода reloadSections
, вы заметите, что это:
reloadSections (_ разделы: IndexSet, с анимацией: UITableViewRowAnimation
sections
параметр IndexSet
, но NOT NSIndexSet
больше.
Итак, что вы можете сделать:
_expandableTableView.reloadSections(NSIndexSet(index: gestureRecognizer.view.tag) as IndexSet, with: .automatic)
ИЛИ Я предпочитаю добавлять IndexSet, даже не используя as IndexSet
:
_expandableTableView.reloadSections(IndexSet(integer: gestureRecognizer.view!.tag), with: .automatic)