繁体   English   中英

UITableViewController中的节标题和表格视图单元的问题

[英]Issue with section header and table view cell in UITableViewController

我做了一个使用UITableviewController而不是使用滚动视图创建屏幕的实验,原因是屏幕中的字段可能会发生巨大变化,这就是我这样做的原因

屏幕: 在此处输入图片说明

所有这些单元都是静态单元。

节头代码

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)

现在,当我滚动表格时,它看起来如下: 在此处输入图片说明

我想在标题部分下滚动表格的静态单元格。 我知道我也可以使用UIViewController的组合,该组合包含Container并代表Table视图控制器( 请参阅参考资料,我已经使用过 )是否有其他解决方案。 请指导我!

谢谢

另外,您也可以使用UITableView的tableHeaderView而不是UITableView's viewForHeaderInSection因为节标题始终UITableView's viewForHeaderInSection在tableview的顶部,除非您进行一些简单的修改

如果使SectionHeader不透明并且不透明/半透明,您将会理解。 尝试制作一个自定义项目(测试项目),在其中创建一个TableView并包含许多带有不同标题的节

没有创建示例项目的完美示例是iPhone中的Letters Phone应用程序(绿色的),其中“ Letters为“节头”,并且在滚动时它们停留在屏幕顶部

这是Swift 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()

使用UIViewController代替UITableViewController并将UIView作为表头顶部的标题添加

参照此内容维护tableView的标头固定

只是一个简单的方法,希望对您有所帮助

如果您必须使用“ UITableViewController”,请参见以下解决方案

UITableViewController(静态单元格/键盘处理)并具有固定的标头

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM