iOS开发——UI_swift篇&TableView实现页眉和页脚

TableView实现页眉和页脚

UITableView具有var tableHeaderView:UIView?属性和var tableFooterView:UIView?属性,可以通过给其赋值来创建列表TableView的页眉和页脚。
 
效果图如下:
iOS开发——UI_swift篇&TableView实现页眉和页脚
代码如下:
 1 import UIKit

 2  

 3 class ViewController: UIViewController,UITableViewDelegate,

 4     UITableViewDataSource,UIGestureRecognizerDelegate {

 5      

 6     var tableView:UITableView?

 7      

 8     var ctrlnames:[String] = ["UILabel 标签","UIButton 按钮","UIDatePiker 日期选择器"]

 9      

10     override func viewDidLoad() {

11         super.viewDidLoad()

12          

13         //创建表视图

14         self.tableView = UITableView(frame: UIScreen.mainScreen().applicationFrame,

15             style:UITableViewStyle.Plain)

16         self.tableView!.delegate = self

17         self.tableView!.dataSource = self

18         //创建一个重用的单元格

19         self.tableView!.registerClass(UITableViewCell.self, forCellReuseIdentifier: "SwiftCell")

20         self.view.addSubview(self.tableView!)

21          

22         //给TableView添加表头页眉

23         var headerView:UIView = UIView(frame: CGRectMake(0,0,tableView!.frame.size.width,60))

24         var headerlabel:UILabel = UILabel(frame: headerView.bounds)

25         headerlabel.textColor = UIColor.whiteColor()

26         headerlabel.backgroundColor = UIColor.clearColor()

27         headerlabel.font = UIFont.systemFontOfSize(16)

28         headerlabel.text = "TableView 页眉"

29         headerView.addSubview(headerlabel)

30         headerView.backgroundColor = UIColor.blackColor()

31         tableView?.tableHeaderView = headerView

32          

33         //给TableView添加表头页尾

34         var footerView:UIView = UIView(frame: CGRectMake(0,0,tableView!.frame.size.width,60))

35         var footerlabel:UILabel = UILabel(frame: footerView.bounds)

36         footerlabel.textColor = UIColor.whiteColor()

37         footerlabel.backgroundColor = UIColor.clearColor()

38         footerlabel.font = UIFont.systemFontOfSize(16)

39         footerlabel.text = "TableView 页眉"

40         footerView.addSubview(footerlabel)

41         footerView.backgroundColor = UIColor.blackColor()

42         tableView?.tableFooterView = footerView

43     }

44      

45     //在本例中,只有一个分区

46     func numberOfSectionsInTableView(tableView: UITableView!) -> Int {

47         return 1;

48     }

49      

50     //返回表格行数(也就是返回控件数)

51     func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

52         return self.ctrlnames.count

53     }

54      

55     //创建各单元显示内容(创建参数indexPath指定的单元)

56     func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath)

57         -> UITableViewCell

58     {

59         //为了提供表格显示性能,已创建完成的单元需重复使用

60         let identify:String = "SwiftCell"

61         //同一形式的单元格重复使用,在声明时已注册

62         let cell = tableView.dequeueReusableCellWithIdentifier(identify, forIndexPath: indexPath)

63             as UITableViewCell

64         cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator

65         cell.textLabel?.text = self.ctrlnames[indexPath.row]

66         return cell

67     }

68 }

 

 

你可能感兴趣的:(tableview)