gpt4 book ai didi

ios - 谁能解释一下这些基本的 iOS 代码行吗

转载 作者:行者123 更新时间:2023-11-29 04:14:56 25 4
gpt4 key购买 nike

我正在做一个 Apple 开发者教程,我有几个关于底部代码行的基本问题:

  1. 这些代码行中的任何一行都没有分配和初始化它们创建的对象吗?这是因为对象在创建时就被赋值了吗?

  2. dequeueReusableCellWithIdentifier 方法 - 该方法返回 nil 的唯一方法是如果不存在与单元标识符参数同名的单元对象吗?如果池中没有可以重用的单元格,那么它会创建一个单元格还是返回 nil 呢?文档指出该方法返回 - 具有关联标识符的 UITableViewCell 对象,如果可重用单元队列中不存在此类对象,则返回 nil。

提前感谢您的帮助

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

BirdSighting *sightingAtIndex = [self.dataController objectInListAtIndex:indexPath.row];

最佳答案

来自评论......

您发布的代码行实际上并没有创建任何东西;他们获得对其他地方创建的事物的引用。其他东西——无论是您的代码还是框架代码——已经使用 alloc/init 实例化了它们,并且现在为您提供了访问权限。

在 TableView 示例中,如果您在 TableView 中注册了类/ Nib ,那么它会为您创建单元格。如果没有,那么当 dequeueReusableCellWithIdentifier: 返回 nil 时创建它。无论哪种方式,当它返回非零时,该对象都是在某个时刻创建的,而不是您的程序当时所在的位置。

( self.dataController 不是我认识的东西,但必须应用相同的逻辑......它的列表要么是由您之前所做的事情预先填充的,要么是它正在生成东西并根据您的要求将它们提供给您。 )

关于ios - 谁能解释一下这些基本的 iOS 代码行吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13856103/

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