带有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/