带有MVC的iOS伸缩标题TableView


Hômnaymìnhsẽhướngdẫncácbạnxâydựngứd ngđơgiảntrong IOSsửdụngXcode 8 v Swift Swift 3.Mụcđíchcủabàiviếtnàysẽgiúpcácbạn
– ApdụngmôhìnhMVC
–自动版式cơbản

Sảnphẩmcuốicùngtrôngsẽgiốngnhưvậy。

c trutrúcprojectcủachúngtasẽgồmcó:
– SHTableViewController: UIViewController和UITableView的子类
Table SHTableViewCell
khởitạodữliệu(nhậndữliệutừAPI)vàtrảdữliệuvềcho SHTableViewControllersửdụng 代表团
子类: UITableViewCell

TableutiênchúngtahãybViewtđầuvớiSHTableViewCell

阶段1: TableViewCell

通过Xcode更改Xing的“单视图应用程序”文件ViewController.swift下载 Xcode的Xcode,并在其中保存文件。

可以使用UITableViewCell子类检查vào“也可以创建XIB文件”

Vớivídụnày,MỗiCellchỉhiểnthị2thôngtinlà类别và摘要。 Vậyđơgiảnchỉcần2 UILabel,chúngtasẽlàmnhưsau。

添加约束视图

Tạo出口cho 2标签条SHTableViewCell

Tio theo,ch Main Main.storyboard ,Identity选项卡Identity inspector tagánSHTableViewControlervào自定义类

添加UITableView v故事板

可以,通过SHTableViewControler添加出口ctable tableview

Bâygiờchúngtasẽtạo页眉视图cho tableview,cácbạnlàmnhưsau

编译vàruncácbạnsẽthấyđượcnhưhình

Đểcốđịnhchiềucao cho headerviewchúngtasẽdefine ra 1

 私人让kTableHeaderHeight:CGFloat = 300.0 

表格标题表格标题表格标题表格标题表格标题表格标题表格标题表格标题表格标题

var headerView: UIView! 

Tiếptheo trong viewDidLoadchúngtasẽviếtnhưsau

 覆盖func viewDidLoad(){ 
headerView = tableview.tableHeaderViewtableview.tableHeaderView = niltableview.addSubview(headerView).......}

Bâygiờchúngtasẽ定义mộthằngsốchochiềucaochúngtasẽcắtbỏủicủa标头视图

 private let kTableHeaderCutAway: CGFloat = 80.0 

Ti CASp theochúngtasẽthêmCAShapeLayer cho vi maskc遮罩层

  var headerMaskLayer:CAShapeLayer! 

viewDidLoad ch tasẽviết错误

 覆盖func viewDidLoad(){........ 
headerMaskLayer.fillColor = UIColor.black.cgColor headerView.layer.mask = headerMaskLayer

标题视图UIBezierPathđểxh view nhvùngtrên标头视图sẽbịcắt

错误的错误updateHeaderView()

Kếtquảcuốicùng

Sauđlà完整源代码可以使用SHTableViewController chocácbạndễhìnhdung

Bàiviếtmìnhcósửdụng资源của

http://blog.matthewcheok.com/design-teardown-stretchy-headers/