gpt4 book ai didi

ios - 为什么我在 Swift 的 UITableView 中看不到任何单元格?

转载 作者:搜寻专家 更新时间:2023-11-01 06:37:42 26 4
gpt4 key购买 nike

我有一个 UIViewController,我把它放在 TableView 上:

enter image description here

我还向其中添加了 UITableViewCell,在 Storyboard 中检查了我的 TableView 是否具有动态生成的内容,并向 UITableViewCell 添加了一个标识符“cell”。我将它与 socket 连接到我的类(class),并设置了从 UITableViewDelegate 的继承:

class MapViewController: UIViewController, UITableViewDelegate, UITextViewDelegate {

@IBOutlet weak var myTableDetailsPanel: UITableView!

override func viewDidLoad() {
super.viewDidLoad()
myTableDetailsPanel.delegate = self
}

然后我将我的自定义对象添加到我的数组中:

var items = NSMutableArray()
...
print("size of items before: \(items.count)")
items.addObject(myObject)
print("size of items after: \(items.count)")
myTableDetailsPanel.reloadData()
myTableDetailsPanel.hidden = false

我也有这个方法:

func tableView(myTableDetailsPanel: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = myTableDetailsPanel.dequeueReusableCellWithIdentifier("cell") as! MyDetailsCell
let yawp:MySingleObject = self.items[indexPath.row] as! MySingleObject
print("hello")
...

而且...我的问题是面板显示为空,在我看到的控制台中:

size of items before: 0
size of items after: 1

但不知何故我没有看到 hellocellForRowAtIndexPath 中的代码从未运行。为什么会这样?

最佳答案

当您实现 UITableViewDelegate 协议(protocol)以接收有关 UITableView 更改的通知时,您必须实现 UITableViewDataSource ,数据源向 TableView 对象提供构建和修改 TableView 所需的信息。

因此您需要实现UITableViewDataSource 协议(protocol)并将dataSource 声明为self,如下所示:

myTableDetailsPanel.dataSource = self

希望对你有帮助

关于ios - 为什么我在 Swift 的 UITableView 中看不到任何单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39559235/

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