Привет, у меня есть TableViewController
две статические ячейки, однако при отображении он показывает две статические ячейки, а затем все другие пустые ячейки для представления таблицы. Однако я не хочу отображать эти ячейки, поскольку они бесполезны. Как мне скрыть остальные ячейки, кроме двух статических ячеек?
118
NSTableView
? У него нет файлаtableFooterView
.tableView.tableFooterView = UIView()
Выберите свой UITableView, перейдите в инспектор атрибутов и измените стиль на Сгруппированный.
источник
Чтобы добавить к этому, причина, по которой установка
tableFooterView
дляUIView()
удаления строк, заключается в том, что вы устанавливаете пустойUIView()
объект для свойства. Согласно документации Apple:Поэтому установка пустого UIView () ничего не отобразит под вашими данными для этого свойства.
Вы можете вернуть пустые строки, сбросив
tableFooterView
значение по умолчанию, например:источник
Установка
tableFooterView
должна удалить лишние ячейки, такие как представления.источник
Вы также можете добиться этого в раскадровке, просто перетащив представление в область нижнего колонтитула табличного представления, а затем установите для его высоты и цвета фона значение 1 и очистите его соответственно с помощью инспектора свойств.
(Предполагается, что вы либо не можете, либо не хотите просто использовать настройку стиля группы по какой-то причине. В противном случае просто сделайте это.)
источник
Swift 4 Разрабатывая ответ HorseT, сначала перетащите элемент управления из представления таблицы в раскадровке в класс контроллера представления и создайте выход под названием tableView.
Тогда ваш viewDidLoad в вашем контроллере представления должен выглядеть примерно так:
источник
Основываясь на приведенных выше ответах быстро .
источник
если вы хотите удалить строки для всех
UITableViews
в своем приложении, просто добавьте такое расширение:Swift 5.0
источник
Вызовите этот код в
viewDidLoad
методе.источник
Добавьте код ниже в свои функции « переопределить функцию viewDidLoad () » или «переопределить функцию viewWillAppear (_ animated: Bool)» .
источник
Просто добавьте:
Объяснение:
Это полностью верно и отлично работает в swift 3. По так как вы устанавливаете пустой объект UIView () для свойства, установка tableFooterView на UIView () удаляет строки.
источник
Абобе ответ прав. Мы можем добиться этого, добавив
источник
Я попробовал tableview.tableFooterView = UIView (), и у меня это не сработало. Я использую собственный TableViewViewCell, возможно, поэтому.
Я все же нашел хак. В моем func numberOfRowsInSection
И из-за этого мой дополнительный пустой пользовательский UITableViewCell больше не отображается. Конечно, это лишний пустой. Я протестирую это еще немного, добавив больше ячеек. Для справки я использую Swift 3, Firebase, пользовательский класс ячеек внутри функции cellForRowAt.
источник