2014-01-04 4 views
0

Так что я более или менее пытается сделать это:Как вытащить UIView из UITableView, созданного с помощью раскадровки?

How to embed a UITableView in a UIScrollview

однако, я не могу показаться, чтобы выяснить, как получить «подвид» (я использую кавычки, как я не уверен, это официально subview для API, но он живет в другом представлении VC), поэтому я могу установить его как заголовок UITableView. Кроме того, просматривая все варианты, доступные в раскадровке, я не вижу, как установить его как заголовок UITableView. Я был бы очень признателен за любую помощь!

Соответствующие раскадровки выстрелы, вот иерархия:

I dragged the view over into the TableViewController, here is the hierarchy if you will

А вот что сам UITableViewController выглядит. Я пытаюсь установить серый блок, как заголовок, так что он не прокручивается: (! При условии, что я на правильном пути)

enter image description here

Программного это то, что я ищу, чтобы выполнить :

UIView *viewForHeader = [[self tableView] SOMEWAYTOGETTHEINNERVIEW?]; 
[[self tableView] setTableHeaderView:viewForHeader] 

и если я могу каким-то образом установить вид в качестве заголовка в XCode 5 с прошивкой 7, было бы здорово, как хорошо! Похоже, в более старых версиях для данной ситуации вида будет дефолт в качестве заголовка:

Table Header Views in StoryBoards

+0

вы пробовали UIView * viewForHeader = [само] Tableview .tableHeaderView; ? – connor

+0

Да, я провел кучу тестирования вокруг этого фронта ... viewForHeader тогда был бы нулевым, так как у tableView наверняка сейчас нет набора tableHeaderView – user3101323

+0

. Неплохо, я думал, что вы пытаетесь получить заголовок. – connor

ответ

1

Вы можете создать пользовательский класс, который наследует от UITableView и установить вид таблицу, чтобы быть этим классом. Затем вы можете создать выход из этого представления в свой собственный класс. Как так:

CustomTableView.h

@interface CustomTableView : UITableView 
@property (weak, nonatomic) IBOutlet UIView *viewForHeader; 
@end 

А потом код, который вы пытаетесь сделать:

UIView *viewForHeader = [self tableView].viewForHeader; 
[[self tableView] setTableHeaderView:viewForHeader] 
+0

это не работало по какой-то причине, я действительно думал, что все будет в порядке. Я создал пользовательский UITableView под названием SplitDetailTV и создал выход из того, что я хочу для него - это заголовок UIView, который выглядит так же, как и выше. Затем программно установите его так, как показано в следующем фрагменте кода. Теперь я могу проверить, что headerView не ноль, поэтому что-то устанавливается, но оно все еще прокручивается. Возможно ли, что заголовок теперь прокручивается, а стиль дизайна из верхнего переполнения стека выше уже не возможен? – user3101323

+0

, чтобы вы хотели, чтобы заголовок оставался в том же месте во время прокрутки? – connor

+0

Да, точно, я хочу, чтобы прокручивать ячейки, пока бит заголовка остается на месте. как разбить вид вещей, изначально я думал, что мне нужен UIView со встроенным UITableView внизу, но прочитал, что это возможно, и кажется более простым – user3101323

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