在我的应用程序中,我使用xib文件使用自定义tableView Cell。我将标签等.xib文件插件创建到我的TableViewCell类
在我的ViewController中,我用来填充和显示表视图上的单元格的代码如下:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let transaction = statementArray[indexPath.row]
let cell = Bundle.main.loadNibNamed("StatementCell", owner: self, options: nil)?.first as! StatementCell
cell.transAmount.text = String(transaction.transAmount)
cell.transDesc.text = transaction.transDesc
cell.transFees.text = String(transaction.transFees)
return cell
}
我知道TableView的工作方式是它们重用屏幕上的单元格。他们是否正在加载.xib并正确填充单元格?或者我必须在我的代码中添加一些内容吗?
答案 0 :(得分:2)
首先,您需要使用UITableView注册自定义单元格
.vid3
{
position: relative;
overflow: hidden;
z-index: 0;
float: right;
right: 700;
}
然后在UITableView Delegate方法中使用cellForRowAt,你需要编写
yourTableView.register(UINib(nibName: "StatementCell", bundle: nil), forCellReuseIdentifier: "cellIdentifier")
现在您可以使用cell.propertyName
访问您的UITableViewCell属性你必须注意“cellIdentifier”和“forCellReuseIdentifier”这两个值必须相同。
答案 1 :(得分:0)
还有一件事是你需要在viewDidLoad
方法中注册你的类以重用标识符。
YourTable.registerclass(tablecell, forCellReuseIdentifier: "identifier"
并确保已连接所有必需的插座。
答案 2 :(得分:0)
在tableview
中首先注册自定义单元格nibCalsslet str1 : NSString = "StatementCell"
tableView.register(UINib(nibName: "StatementCell", bundle: nil), forCellReuseIdentifier: str1 as String)
现在初始化tableviewcell
let cell1:StatementCell = tableView.dequeueReusableCell(withIdentifier: str1 as String) as! StatementCell!
现在访问tableviewcell outlet collection。