gpt4 book ai didi

ios - Swift Custom Cell 使用标签创建你自己的 Cell

转载 作者:搜寻专家 更新时间:2023-10-30 22:03:26 43 4
gpt4 key购买 nike

我刚开始使用 Swift 作为编程语言,但我遇到了自定义单元格的问题。

当我尝试创建自定义单元格,然后继续尝试按照我需要的方式设计它们(样式设置为自定义)时,一切看起来都不错。现在我不知道如何将特定数据放入其中,因为我找到的所有教程都使用样式选项“基本”,其中它们只有一个文本标签,他们将数据分配给该文本标签。

现在对我来说,当我“控制拖动”我的标签到我的代码中时,我给它们指定了特定的名称,例如“dateLabel”或“sourceLabel”,以便正确插入数据。

现在我不确定,也找不到任何有效的答案,关于如何调用我的定制标签以便我可以将我的数据分配给它们...

也许你们中有人可以帮我解决这个问题,因为我很确定这是一个简单的问题,但我找不到任何资源来解决这个问题 ^^

enter image description here

希望字体不要太小,我只是想让你们看看我得到的错误。

我使用以下教程作为指导,因为这是唯一一个按照这个人的方式工作的教程:https://www.youtube.com/watch?v=0qE8olxB3Kk

我检查了标识符,他设置正确,但我无法在网上找到任何关于如何使用正确名称正确引用我自己的标签的信息。

任何帮助将不胜感激:)

最佳答案

尝试以下步骤:

  1. 创建一个扩展 UITableViewCell 的自定义表格 View 单元格类。在我的示例中,自定义表格 View 单元格类称为 MyCustomTableViewCell

  2. 更新 Storyboard的单元格,使其使用您的自定义表格 View 单元格类。转到 Identity Inspector 并将 Class 值设置为自定义 TableView 单元格类的名称。 Set Custom Cell Class in Identity Inspector

  3. 更新 Storyboard的单元格并为其赋予重用标识 值。转到 Attributes Inspector 并设置 Identifier 值。例如,我为我的单元格提供了 MyCustomCell 的标识符值。 Set the Reuse Identity of your Cell

  4. 控制将单元格的标签拖动到新的自定义表格 View 单元格类(即 MyCustomTableViewCell 类)。


完成上述步骤后,当您在 tableView:cellForRowAtIndexPath: 方法中出队您的单元格时,您将能够访问标签。正如下面的代码片段所示,您将需要:1) 使用您在上述步骤中建立的重用标识符获取单元格,以及 2) 转换为您的自定义表格 View 单元格类。

例如,如果将自定义表格 View 单元格命名为 MyCustomTableViewCell,这就是它的样子。这是在您创建类并控制将您的标签拖到此类中之后。

class MyCustomTableViewCell: UITableViewCell {    
@IBOutlet weak var categoryLabel: UILabel!
@IBOutlet weak var dateLabel: UILabel!
@IBOutlet weak var sourceLabel: UILabel!
@IBOutlet weak var titleLabel: UILabel!
}

您的 ViewController 可能如下所示:

// NOTE: I subclassed UITableViewController since it provides the
// delegate and data source protocols. Consider doing this.
class ViewController: UITableViewController {

// You do NOT need your UILabels since they moved to your
// custom cell class.

// ...
// Omitting your other methods in this code snippet for brevity.
// ...

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

// Use your cell's reuse identifier and cast the result
// to your custom table cell class.
let article = tableView.dequeueReusableCellWithIdentifier("MyCustomCell", forIndexPath: indexPath) as! MyCustomTableViewCell

// You should have access to your labels; assign the values.
article.categoryLabel?.text = "something"
article.dateLabel?.text = "something"
article.sourceLabel?.text = "something"
article.titleLabel?.text = "something"

return article
}
}

关于ios - Swift Custom Cell 使用标签创建你自己的 Cell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33004189/

43 4 0