2016-11-29 76 views
0
节头和表视图细胞

我已经做了使用的UITableViewController的,而不是使用滚动视图原因产生的画面的实验是在屏幕可能会显着改变等领域,这就是为什么我这样做问题与UITableViewController中

屏幕:enter image description here

所有这些细胞都是静态细胞。

节头码

let backgroundImage = UIImage(named: "main_bg") 
    let imageView = UIImageView(image: backgroundImage) 
    self.tableView.backgroundView = imageView 

    header.backgroundColor = UIColor.clear 
    let lblheader : appLabel = appLabel(frame: CGRect(x: 0, y: 20, width: UIScreen.main.bounds.width, height: header.frame.height - 20)) 
    lblheader.text = "SIGN UP" 
    lblheader.textFontsize = 14 
    lblheader.textFontType = 2 
    lblheader.textFontColor = 1 
    lblheader.textAlignment = .center 
    header.addSubview(lblheader) 

    let btnback : appButton = appButton(frame: CGRect(x: 0, y: lblheader.frame.origin.y, width: 50, height: lblheader.frame.height)) 
    btnback.backgroundColor = UIColor.clear 
    btnback.setImage(UIImage(named: "back_arrow"), for: .normal) 
    btnback.addTarget(self, action: #selector(self.btnBackTapped), for: .touchUpInside) 
    header.addSubview(btnback) 

现在,当我滚动表看起来如下: enter image description here

我想在标题部分滚动表格的静态细胞。 我知道我也可以使用包含Container的UIViewController的组合,并且代表表视图控制器(参考:See this i used it already) 如果有任何其他解决方案。 请指导我!

谢谢

+0

你需要一个单独的头文件,你不要添加一个UIView,并把tableView放在那个下面。这很容易 ;) – Dili

回答

0

或者你可以使用的UITableView的tableHeaderView而不是使用UITableView's viewForHeaderInSection因为节头WILL始终坚持的tableview的顶部,除非另有如果你做一些简单的窍门

如果你让你的SectionHeader不透明,不透明/半透明,你会明白。尝试制作一个自定义项目(测试项目),您可以在其中创建带有许多不同标题段的TableView

没有创建示例项目的完美示例是Phone应用程序(绿色应用程序),其中Letters节头和他们坚持在屏幕上方滚动

这当是雨燕2.3

let someHeader = NSBundle.mainBundle().loadNibNamed("", owner:self, options nil!)!.first as! SomeView 

//this is not a real function just what you wanna do stuff 
someHeader.customizeIfNeeded ... yadda yadda set frame assign values add targets etc 


tableView.tableHeaderView = someHeader 
tableView.reloadData()