Я использую UITableviewcontroller
, и я хочу, чтобы нижний колонтитул всегда оставался на внизу на экране. Однако позиция y
нижнего колонтитула изменяется в соответствии с height
из tableviewcell
. Как я могу заставить его придерживаться нижней части экрана?Как я могу сделать footerview всегда оставаться внизу в UITableViewController?
ответ
Попробуйте это:
tableObj.tableFooterView = UIView(frame: CGRectMake(0, 0, 320, 150))
tableview
Вид колонтитула всегда будет оставаться на дне tableview
и всегда будет прокручиваться вместе с ним. Если вам нужно сделать снизу внизу внизу, то вы не сможете использовать TableViewController
. Вам нужно будет использовать UIViewController
, поместите свой tableView
в качестве подзаголовка. Поместите нижний колонтитул в качестве другого подзаголовка и сделайте его.
Я знаю, это звучит глупо. Но возможно ли добавить другой вид в tableviewcontroller? Здесь m работает над тем, для чего я должен использовать tableviewcontroller, поэтому не могу переключиться на контроллер вида. Я пытаюсь заставить его работать :(можно ли добавить любое другое представление в класс tableviewcontroller? И, возможно, заставьте его придерживаться нижней части –
Если вы используете 'UINavigationController', вы добавляете свой' footerview' в качестве 'subview 'на ваш' navigationController'. Не забудьте удалить 'footerView' из' viewDidDisappear', иначе он появится со всеми вашими экранами в стеке навигации. – user1107173
Вы можете добавить UIView в нижней части TableViewCell, таким образом, ваш нижний колонтитул всегда будет находиться внизу.
Проверить это LINK
OP заявил: «Я хочу, чтобы просмотр нижнего колонтитула всегда оставался в нижней части экрана. " –
@EugeneBraginets да, вот что ответ в ссылке выше. –
@vivektakrani Ссылка не работает :( – Nathaniel
Swift код, который делает footerView заполнить остальное пространство в нижней части, , то вы можете использовать autolayout, чтобы просматривать на дне в footerView:
override func viewDidLayoutSubviews()
{
super.viewDidLayoutSubviews()
guard let footerView = tableView.tableFooterView else
{
return
}
var cellsHeight:CGFloat = tableView.tableHeaderView?.frame.height ?? 0
let sections = self.numberOfSections(in: tableView)
for section in 0..<sections
{
let rows = self.tableView(tableView, numberOfRowsInSection: section)
for row in 0..<rows
{
let indexPath = IndexPath(item: row, section: section)
cellsHeight += self.tableView(tableView, heightForRowAt: indexPath)
}
}
var frame = footerView.frame
frame.size.height = tableView.contentSize.height - cellsHeight;
frame.origin.y = cellsHeight
footerView.frame = frame
}
I столкнулись с той же проблемой, что на удивление Apple не решила из коробки. Посмотрите мой ответ здесь, он будет поддерживать нижний колонтитул внизу, независимо от того, сколько ячеек есть или как высокие клетки. https://stackoverflow.com/a/41816730/1553351
- 1. Как я могу сделать FooterView краха UITableView?
- 2. Как я могу сделать диалог ошибок всегда оставаться на вершине
- 3. Как я могу заставить полосу прокрутки оставаться внизу?
- 4. Как сделать форму всегда оставаться на вершине
- 5. UITextField внизу экрана на UITableViewController
- 6. Как я могу оставаться СУХОЙ?
- 7. Как я могу сделать эту фотографию всегда оставаться в центре div?
- 8. Силовой нижний колонтитул, чтобы оставаться внизу CSS
- 9. Как я могу сделать эту схему сетки всегда оставаться одним и тем же размером bootstrap 3?
- 10. Как я могу сделать размер списка не всегда всегда нулевым
- 11. Добавление кнопки внизу UITableViewController с анимацией
- 12. Как сделать окно всегда оставаться на вершине .Net?
- 13. Запрос ввода всегда внизу
- 14. Footerview не отображается всегда при прокрутке списка.
- 15. RelativeLayout Всегда внизу
- 16. NSArray всегда оставаться в силе
- 17. Как я могу оставаться на одной странице?
- 18. Как я могу заставить панель приложений оставаться внизу, независимо от разрешения экрана?
- 19. Как я могу поставить кнопку внизу?
- 20. Как сделать nav внизу внизу наверх
- 21. iOS: Сделать навигационную панель всегда видимой в UITableViewController
- 22. Как сделать часть веб-сайта всегда видимой/фиксированной внизу?
- 23. Как сделать прозрачный UITableViewController сверху?
- 24. Как вызвать метод FooterView
- 25. Как я могу использовать SwipereFreshLayout внизу в gridview?
- 26. FooterView для вида сетки
- 27. Как я могу заставить панель инструментов Recorder оставаться видимой?
- 28. сделать форму, чтобы всегда оставаться на вершине каждого окна
- 29. Сделать всплывающее окно CSS всегда оставаться на вершине его родителя
- 30. Как разрешить прокрутку div переполнения всегда внизу?
Использование свойства tableFooterView таблицы view –
override func tableView (tableView: UITableView, viewForFooterInSection раздел: Int) -> UIView? { , если раздел == 1 { пусть footerView = UIView (кадр:. CGRectMake (0, UIScreen.mainScreen() bounds.height - 40, tableView.frame.size.width, 40)) возвращение footerView } return UIView() } Это на самом деле мой блок кода. Я хочу нижний колонтитул в нижней части экрана, но он не прилипает к нижней части экрана и не меняется в зависимости от высоты стола. –
Отредактировано: = Я не думаю, что это возможно с uitableviewcontroller. Так что я добавил представление как подобие навигационного контроллера, и это сработало для меня :) –