【问题标题】:Image Changing back in tableView Swift图像在 tableView Swift 中变回
【发布时间】:2020-03-28 03:57:53
【问题描述】:

我正在单元格内创建一个带有按钮(带有图像 A)的 tableView。单击按钮时,按钮的图像应从 A -> B 更改,并且正在更改。但是当我向下滚动并返回时,单击按钮的图像变回 A 。如何解决这个问题?

【问题讨论】:

  • 我还有一个问题。我应该在哪里定义我的按钮插座和按钮点击操作。在 UITableViewCell 或使用该单元格的 VC 中。当我在单元格中定义它们时,这正在发生 - 我单击按钮,图像从 A 更改为 B,但是当我向下滚动时,图像已经在某些单元格中更改为 B。但是图像更改的问题已点击按钮返回 A 不存在当我在 VC 中分配插座和操作时,向下滚动按钮图像时仅 A 但我单击的按钮未保持其状态 (B)
  • 按钮的出口将添加到单元格类中,并且可以在单元格类和视图类中添加操作,如果您不处理其他情况,则会在滚动时更改图像,然后在这种情况下单元格采用默认图像.
  • 嗨,你好。这不是“我们为您编写代码”的平台。向我们展示您到目前为止所做的尝试。给我们可复制的可运行可重现的代码,然后我们可以帮助你。请阅读并考虑这一点:stackoverflow.com/help/how-to-ask
  • 表格视图在您滚动时重复使用您的单元格。尝试在a模式下保存按钮状态,在tableView:cellForRowAtIndexPath:中恢复状态

标签: ios swift uitableview swift5


【解决方案1】:

首先,当您从 A->B 更改时,您应该从 Model 类中获取图像。单击按钮时,图像应在 Model 类上更新,之后任何时候向下滚动 tableview(cellForRowAt) 都会获取正确的图像(如 B),因为您在 cellForRowAt 的方法中从 Model 类设置按钮图像。

【讨论】:

    【解决方案2】:

    让我再试一次。当您使用 UITableView 时,单元格将被重用。因此,您将需要一种方法来跟踪每个单元格的“按钮”状态。有很多方法可以解决这个问题,但我可以建议使用一组“布尔”来跟踪按钮是否被切换。然后,在处理单元格的 ViewController 中创建一个检查,以检查“bool”数组以更新按钮是否被按下。祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-28
      • 1970-01-01
      • 1970-01-01
      • 2019-11-01
      • 1970-01-01
      • 2017-01-14
      • 2018-06-05
      • 1970-01-01
      相关资源
      最近更新 更多