override func viewDidLoad()
{
super.viewDidLoad()
if self.revealViewController() != nil
{
menuButton.target = self.revealViewController()
menuButton.action = #selector(SWRevealViewController.revealToggle(_:))
self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
}
Server.fetchCampaignList(target: self)
let indicator = UIActivityIndicatorView(activityIndicatorStyle: .white)
indicator.center = self.view.center
indicator.startAnimating()
self.view.addSubview(indicator)
}
我已经阅读了很多答案,但仍然不明白我做错了什么。我的以下函数位于 TableViewController 类中。我想在调用 viewDidLoad 方法后立即显示事件指示器。在相同的方法中,我必须从服务器获取列表,当收到数据时,同一类中的 nextAction 方法被调用并且正在重新加载表。
一切正常。但事件指示器没有出现。
最佳答案
我已经在主线程中添加了指标代码并且它出现了。我会要求一些高级开发人员解释如果没有它会出现什么问题以及为什么现在它可以这样工作。这对以后的迟到者有帮助。
override func viewDidLoad()
{
super.viewDidLoad()
if self.revealViewController() != nil
{
menuButton.target = self.revealViewController()
menuButton.action = #selector(SWRevealViewController.revealToggle(_:))
self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
}
OperationQueue.main.addOperation
{
Server.fetchCampaignList(target: self)
let indicator = UIActivityIndicatorView(activityIndicatorStyle: .gray)
indicator.center = self.view.center
self.view.addSubview(indicator)
indicator.startAnimating()
}
}
关于ios - 事件指示器未出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39825861/