NSPointerArray 基础知识
NSPointerArray basics
我正在尝试掌握 NSPointerArray-class,并且有一个关于 table 视图单元格的非常具体的问题。
如果我将指针存储到 NSPointerArray 中被按下的单元格,即使该单元格已被重复使用,我是否能够将其追溯到被按下的原始单元格?
我希望你能理解我的意思,但基本上我是在尝试实现一个类似 snapchat 的功能,在按下单元格时使用倒计时计时器。
如果您存储指向 UITableViewCell
的指针,您将能够找到最初按下的单元格,但这是一个可重复使用的单元格,将不再处于按下时的状态按下。它现在可能会包含不同的信息。
更好的方法是存储按下的单元格的 indexPath
,这样您就可以返回到数据模型并找到该按下的单元格的原始数据。一个简单的数组将包含 indexPath
个对象。
跟踪 indexPath 会让您知道您实际按下了哪些单元格,但 indexPath 不包含指向特定单元格的指针。相反,它只包含一条记录,表明有人按下了 section/row 中的一个单元格(例如,一个 indexPath
对象包含 section
和 row
的信息)。通过此信息,您可以访问模型中的数据并执行您需要的任何操作。
我正在尝试掌握 NSPointerArray-class,并且有一个关于 table 视图单元格的非常具体的问题。
如果我将指针存储到 NSPointerArray 中被按下的单元格,即使该单元格已被重复使用,我是否能够将其追溯到被按下的原始单元格?
我希望你能理解我的意思,但基本上我是在尝试实现一个类似 snapchat 的功能,在按下单元格时使用倒计时计时器。
如果您存储指向 UITableViewCell
的指针,您将能够找到最初按下的单元格,但这是一个可重复使用的单元格,将不再处于按下时的状态按下。它现在可能会包含不同的信息。
更好的方法是存储按下的单元格的 indexPath
,这样您就可以返回到数据模型并找到该按下的单元格的原始数据。一个简单的数组将包含 indexPath
个对象。
跟踪 indexPath 会让您知道您实际按下了哪些单元格,但 indexPath 不包含指向特定单元格的指针。相反,它只包含一条记录,表明有人按下了 section/row 中的一个单元格(例如,一个 indexPath
对象包含 section
和 row
的信息)。通过此信息,您可以访问模型中的数据并执行您需要的任何操作。