gpt4 book ai didi

iphone - 如何更新 UITableView 的屏幕外单元格

转载 作者:行者123 更新时间:2023-12-03 21:16:47 26 4
gpt4 key购买 nike

我的应用程序中有一个 UITableView,并且我已经对其进行了自定义。每个单元格包含一个 ImageView 和一个按钮。当我单击按钮时,下载过程将开始,并且该按钮将替换为 UIProgressView。下载完成后,进度 View 将被删除,按钮将再次以不同的状态显示。对于屏幕中可见的单元格来说,它工作得很好。但下载完成后我无法更新屏幕外的单元格。即使单元格位于屏幕外,进度 View 更新也能正常工作。但是当尝试用按钮替换进度 View 时遇到问题。

这是我的一些代码示例:

下载完成后进行更新,

//Creating custom cell with the Id value and upadting the cell
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:btnId inSection:0]; //btnId is the id of the button clicked
UIMenuItemCell *cell = [(UIMenuItemCell *)[self.menuItemsPanel cellForRowAtIndexPath:indexPath] retain];

//hiding the progressview
for (UIProgressView *currentProgress in cell.contentView.subviews) {
if ([currentProgress isKindOfClass:[UIProgressView class]]) {
currentProgress.hidden = YES;
[cell.contentView reloadInputViews];
}
}
for (UIButton *currentBtn in cell.contentView.subviews) {
if ([currentBtn isKindOfClass:[UIButton class]]) {
if (currentBtn) {
//updating the button status here, once the download is complete
}
}

请帮忙。

最佳答案

当 Cell 出现在屏幕上时,将调用 cellForRowAtIndexPath。

在该方法中,进行检查

if(download completed) remove progress bar and add button.

关于iphone - 如何更新 UITableView 的屏幕外单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11408176/

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