2011-12-07 17 views

Odpowiedz

6

Można zrobić to ustawiając właściwość UITableView o wartości tableHeaderView.

UITableView class reference

tableHeaderView

Zwraca widok akcesorium, które jest wyświetlane nad tabelą.

@property (nonatomic, zachowują) UIView * tableHeaderView

Dyskusja Domyślna wartość jest zerowa. Widok nagłówka tabeli to różni się od nagłówka sekcji.

Dostępność Dostępne w iOS 2.0 i nowszych wersjach.

2

Dodaj UIView i UITableView jako subviews z UIView a następnie ustawić ich wysokość, szerokość i X, Y stanowisko od inspektora Rozmiar interfejs konstruktora lub Użyj CGRectMake w Objective-C

+0

Ta metoda wymaga ode mnie ponownego skonfigurowania źródła danych i delegowania UITableView. Nie wystarczająco przyjazny. – user403015

+0

Myślę, że jego aplikacja jest typu nawigacji, który ma klasę dziedziczone z UITableViewController. –

+1

@ user403015 Jeśli chcesz, aby UIView na górze został naprawiony, jest to jedyny sposób na obsłużenie go. – theTRON

-1

Widoki są utrzymywane w hierarchii w systemie iOS. Są one utrzymywane przede wszystkim jako macierz z najnowszym widokiem. Aby wstawić jakiś widok pod jednym lub kilkoma widokami, wystarczy manipulować nim.

Wszystko to jest teoria, nie zrobiłem tego, co chcesz. Więc nie miej do mnie pretensji;) jest to przyjacielska sugestia.

[self.view insertSubview:yourNewView belowSubview:navigationController];

+0

Nie dotyczy to jednak ramek. –

1

trzeba zaimplementować następujące UITableView metod delegata

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section 
+0

Te metody delegatów dodadzą widok do nagłówka sekcji **, a nie powyżej samego widoku tabeli. – Mutix

+0

Zakładam, że w widoku tabeli jest tylko ** jedna sekcja ** –

0

etap 1) utworzyć widok nagłówka jak ustawić wylot do tego widoku.

@property (nonatomic, strong) IBOutlet UIView * viewHeader;

Setp 2) dodawania po jednym kodem linii na viewDidLoad

[self.tableview setTableHeaderView: self.viewHeader];

Zrobione !!!

Powiązane problemy