问题描述
我在 tableview 单元格中有一个 UIActivityIndicatorView。
显示上传状态。
它在我的应用上运行良好。
但它从未在共享应用扩展程序中旋转。
class MyCell: UITableViewCell {
@IBOutlet private var activityIndicator: UIActivityIndicatorView!
func config(isuploading: Bool) {
isuploading ? self.activityIndicator.startAnimating(): self.activityIndicator.stopAnimating()
print("isuploading: \(isuploading),isMainThread: \(Thread.isMainThread)")
// isuploading : true,isMainThread: true
}
}
我试图在调度主队列中运行它。不工作
dispatchQueue.main.async {}
dispatchQueue.main.asyncAfter(deadline:,execute: )
我还尝试在 XIB 中添加单独的 UIActivityIndicatorView。
这个新 UIActivityIndicatorView 的唯一工作是旋转。
它在屏幕上显示但不旋转。
似乎 UIActivityIndicatorView 不会在共享应用程序扩展中旋转。
很奇怪
解决方法
在这个视图中,我有另一个 textField。
为了获得更好的用户体验,我会自动关注 textField。
_ = self.textField.becomeFirstResponder()
becomeFirstResponder
会以某种方式阻止 UIActivityIndicatorView
的动画。
我能做的是在某些情况下不要自动关注 textField
没有更好的解决方案,欢迎任何建议