如何解决自定义单元格/表格视图
我正在尝试学习 tableView 和自定义单元格。我找到了一些教程。
但是,当用户编辑信息时,我需要能够将信息从一个单元格转到另一个单元格。
我在实现像 Alert 视图这样的代码以在单元格上工作时也遇到了问题,即使知道它正在视图控制器上工作。
有人可以指导我学习教程吗,因为我很难找到。
解决方法
正如我在评论中所说的,你在一个问题中提出了太多问题,无论如何这是一个小型 TableView 教程:
首先,你需要创建你的tableview:
var tableView: UITableView!
然后您将其添加到您的视图中:
//Put these in your view did load
//Change tose vaues as you please
tableView = UITableView(frame: CGRect(x: 0.0,y: 0.0,width: UIScreen.main.bounds.width,height: 400),style: .plain)
view.addSubview(tableView)
因此您需要注册单元格:
tableView.register(UITableViewCell.self,forCellReuseIdentifier: "MyCell") //Choose the identifier you want but always use the same within a single Table view
您必须设置委托和数据源:
//put these in your view did load
tableView.delegate = self
tableView = self
并且您的类将需要符合这些协议,因此,您将向其中添加 UITableViewDelegate 和 UITableViewDataSource:
class MyViewController: UIViewController,UITableViewDelegate,UITableViewDataSource{}
因此,您还必须设置协议存根:
//Here you'll decide the number of cells your tableView will have
func tableView(_ tableView: UITableView,numberOfRowsInSection section: Int) -> Int {}
//Here you'll decide the desired output of your cell (text,color ecc...)
func tableView(_ tableView: UITableView,cellForRowAt indexPath: IndexPath) -> UITableViewCell {
//You have to create the cell first,it can be done as follows:
let cell = tableView.dequeueReusableCell(withIdentifier: "MyCell",for: indexPath) //Notice how I'm using the same identifier
return cell
}
还有很多其他协议存根,例如:
//Use this to determine the behaviour of the cell when you tap it
func tableView(_ tableView: UITableView,didSelectRowAt indexPath: IndexPath) {}
//Use this to set the cell's height
private func tableView(tableView: UITableView,heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat{}
您可以在苹果文档中找到更多信息。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。