gpt4 book ai didi

objective-c - UIProgressView 没有出现在 UITableViewCell 上

转载 作者:行者123 更新时间:2023-11-28 18:42:36 26 4
gpt4 key购买 nike

我在包含 UIProgressView 的 iOS Storyboard上有一个原型(prototype)单元格。

定期执行的后台进程通知代理它已经启动。此委托(delegate)应使 UIProgressView 在表格单元格上可见,但这并没有发生。即使我可以看到正在调用的委托(delegate),它也不会导致 UIProgressView 出现。

委托(delegate)方法尝试获取指向 UIProgressView 的指针,如下所示:

  UIProgressView* view = (UIProgressView*) [[[self tableView:myTableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:0]] contentView] viewWithTag:MyProgressViewTag];

其中 viewWithTag 设置为 UIProgressView 的标签。

我已经尝试调用 [myTableView reloadData][myTableView setNeedsDisplay] 来尝试强制重绘单元格,但没有成功。

有什么想法吗?

最佳答案

您从 tableView 的数据源请求一个新的单元格,您获得的单元格不是 tableView 的一部分。

你想要一个已经在 tableview 中的单元格,所以向 tableView 询问那个单元格。

试试这个:

UIProgressView* view = (UIProgressView*) [[[myTableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:0]] contentView] viewWithTag:MyProgressViewTag];

并确保从主线程调用它。您不能从非主线程的线程操作 UI 对象。

关于objective-c - UIProgressView 没有出现在 UITableViewCell 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9418437/

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