gpt4 book ai didi

ios - Swift 2.0 一个 View Controller 中的两个 TableView cellForRowIndexPath

转载 作者:搜寻专家 更新时间:2023-11-01 07:29:10 24 4
gpt4 key购买 nike

我在这里看到了一些关于此的问题,但没有明确的答案我使用的是最新版本的 Xcode 和 swift...

我正在尝试在一个 View Controller 中使用两个 TableView ,这里是我的 cellForRowIndexPath 函数

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

var cell: UITableViewCell!

if(tableView == self.allTableView){

cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! BMRadioAllTableViewCell

cell.mixImage.image = mixPhotoArray[indexPath.item]

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
cell.mixDateLabel.text = dateFormatter.stringFromDate(mixDateArray[indexPath.item])


}

if(tableView == self.featuredTableView){
// SET UP THE NEXT TABLE VIEW

}


return cell
}

我收到错误“UITableViewCell 类型的值没有成员“xxxx”,因此它显然没有注册我在 if 语句中所做的单元格更改。

我尝试过其他各种方法,例如在 if 语句中声明变量并将其返回。但是您会收到错误消息“预期返回 UITableViewCell 的函数中缺少返回值”,因为您需要在 if 语句之外获取它。

最佳答案

如果两个不同的表格有两种不同的单元格类型,您应该使代码看起来像这样:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
if(tableView == self.allTableView){
var cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! BMRadioAllTableViewCell

cell.mixImage.image = mixPhotoArray[indexPath.item]

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
cell.mixDateLabel.text = dateFormatter.stringFromDate(mixDateArray[indexPath.item])

return cell;
} else {
var cell = ...
// SET UP THE NEXT TABLE VIEW
return cell
}
}

不需要一个通用的 cell 变量来处理两个表。

关于ios - Swift 2.0 一个 View Controller 中的两个 TableView cellForRowIndexPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33792382/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com