[英]only one section header
我只想為最上方的單元格設置一個節標題(用於UITableView),而表格的標頭放在頂部,顯示有關最上方單元格的一些附加信息。
有可能嗎? 如果不是這樣(因為自從我仔細閱讀所有文檔以來,我想是這樣),您是否知道如何復制這種行為?
您需要創建自己的視圖以用作標題。 使自定義標題視圖成為表格視圖的同級元素並將其放置在屏幕上表格視圖的上方,這將是最簡單的。
由於UITableView
是UIScrollView
的子類,因此表視圖的委托也是滾動視圖委托,並接收UIScrollViewDelegate
消息。 您要實現此方法:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
每次委托收到該消息時,您都希望它查看表視圖頂部的表視圖行(使用[tableView indexPathForRowAtPoint:tableView.contentOffset]
),並相應地更新自定義標頭視圖的內容。
閱讀Apple文檔的UITableView。 您要查找的屬性是tableHeaderView。
使用UITableViewController
很難(並非不可能),因為它會迫使tableView成為根視圖。
如果實現自己的控制器,請繼承UIViewController
而不是UITableViewController
。
您必須采用數據源和委托協議,並適當地實現這些方法,但是隨后您將普通視圖作為根視圖。 然后,您可以在所需的任何位置和大小以及周圍的任何位置添加UITableView
。
唯一真正的限制是您在IB中構建的靜態表視圖。 但是,在這種情況下,您可以實現視圖控制器的包含,並將您的表視圖控制器作為另一個控制器的父級,並為其提供一個特定的視圖來接管。
第一個選擇非常簡單,但是第二個是高級技術,您需要了解視圖控制器的約束才能正確執行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.