2012-12-29 6 views
1

У меня есть UITableViewController, и я хочу добавить фиксированную одну кнопку в нижней части экрана.Добавление кнопки в нижней части UITableViewController - альтернатива панели инструментов

Я не хочу, чтобы он прокручивался вместе с остальной частью стола. Я знаю, что мне нужно, чтобы кнопка и табличное представление были на одном уровне, но я не знаю, как это сделать с помощью TableViewController.

Есть ли более простой способ?

+0

до сих пор я попробовал добавить 'UIImage' как подзаголовок в' self.view', но он прокручивается так, не идет. Также подумал о 'viewForFooterInSection', но прочитал, что если в tableview будут разделы, кнопка не будет исправлена. – Segev

ответ

2

Вы действительно не объясняете, почему панель инструментов не является вариантом, но это был бы самый простой способ сделать это. Вы также можете сделать это, сделав контроллер вида не наследуемым от UITableViewController, но от UIViewController. Затем вы добавляете представление таблицы, которое занимает весь экран, минус небольшая область внизу, где вы можете поместить свою кнопку.

+0

Я просто хочу кнопку. Я не хочу, чтобы панель инструментов блокировала представление. Если есть простой способ сделать это с помощью альфа-панели инструментов, это тоже неплохое решение. – Segev

+0

Итак, вы хотите, чтобы кнопка плавала над табличным видом? –

+0

Да. Поплачьте и оставайтесь неподвижными. – Segev

1

в XIb, поставил «UITableView in a UIView» (новый «корень» вид) и сделать UITableview по высоте view.height - в высоту около 44px, место UIButton в представлении, под столом :)

вам, вероятно, потребуется подкласс tableViewController .. на самом деле нет .. вам нужно по умолчанию UIViewController вместо, который хорошо так как tableViewController не сильно само по себе в любом случае: D

@interface BetterTableVC : UIViewController<UITableViewDataSource, UITableViewDelegate> 
@property(weak) IBOutlet UITableView *tableView; 
@end 
+0

Это была моя первая попытка, но у меня уже есть 300 строк кода внутри подкласса 'UITableViewController'. Когда я попытался переместить это в подкласс UITableView внутри представления, у меня появилось много ошибок. – Segev

+0

Не нужно много переходить на подкласс UIViewController. Просто измените родительский класс в файле заголовка, затем в '-loadView' убедитесь, что вы создаете представление таблицы, добавляете его в свою иерархию представлений и устанавливаете его источник данных и делегируете себя. –

+0

? ... ваш подкласс просто наследуется от запаса VC (как показано на рисунке Ive). вы не перемещаете какой-либо код –

Смежные вопросы