【问题标题】:Is prepareForReuse a Good Place to Save UITableViewCell State Information?prepareForReuse 是保存 UITableViewCell 状态信息的好地方吗?
【发布时间】:2011-12-10 08:08:31
【问题描述】:

我需要保存我的 UITableViewCell 的状态(特别是嵌入表格视图的偏移量)。 prepareForReuse 是这样做的好地方吗?如果它是 UIViewController,我会查看 viewWillDisappear,但显然这里不是一个选项。

我在想,每当单元格被标记为重复使用(从表格视图中“移除”)时,我都需要保存状态。我试图想到一些奇怪的情况,其中一个单元格将从表格视图中删除,没有调用 prepareForReuse,然后放回 UITableView(从而跳过我的保存代码)。

谢谢!

编辑以获取更多信息

我创建了一个类似 Pulse Reader 的界面。此处插图:When Do You Need To Reset the view.frame Property After a Transformation iOS

我需要保存嵌入的水平表视图的位置,以便用户将水平表视图滚动到视图之外(通过滚动垂直表视图),然后将该水平表视图滚动回视图(再次,通过滚动垂直表视图)水平表视图与用户离开它的位置相同。也就是说,如果他们正在查看第 1 行的单元格 15,然后滚动到第 20 行,然后返回到第 1 行,我希望单元格 15 就在他们离开它的地方。

【问题讨论】:

  • 您能否更具体地说明您想要实现的目标?你说的偏移是什么意思?也许有更好的方法来解决您正在尝试做的事情。那个偏移量是多少?

标签: ios memory-management tableview tableviewcell


【解决方案1】:

Ray Wenderlich Tutorial 出现之前,我实现了相同的设计。我最终使用并扩展了这个控件:APCarouselView。不确定这对您有多大帮助,但使用此控件对我来说非常容易,只要我保留对每个 CarouselView 的引用,它就会保留它的滚动位置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-12
    • 1970-01-01
    • 2018-12-22
    • 2018-11-26
    • 2012-01-12
    • 1970-01-01
    相关资源
    最近更新 更多