Ios swift中加载微调器的实现

Ios swift中加载微调器的实现,ios,swift,loading,Ios,Swift,Loading,当我的应用程序第一次从关闭状态启动时,我尝试在进行一些网络呼叫时显示加载微调器。这些网络调用通常只需要很短的时间,因为它们需要一个json字符串和一些处理,但是如果它们需要比平时更长的时间,我不希望我的用户在没有他们需要的数据的情况下尝试在应用程序中操作。所以,当这些调用进行时,我试图显示一个旋转器。但旋转器从未出现过。在我改变很多东西之前,我就已经开始工作了,现在它不再工作了,我一辈子都不知道为什么 这是我的HomeViewController中的viewDidLoad()方法,其中该信息从A

当我的应用程序第一次从关闭状态启动时,我尝试在进行一些网络呼叫时显示加载微调器。这些网络调用通常只需要很短的时间,因为它们需要一个json字符串和一些处理,但是如果它们需要比平时更长的时间,我不希望我的用户在没有他们需要的数据的情况下尝试在应用程序中操作。所以,当这些调用进行时,我试图显示一个旋转器。但旋转器从未出现过。在我改变很多东西之前,我就已经开始工作了,现在它不再工作了,我一辈子都不知道为什么

这是我的HomeViewController中的viewDidLoad()方法,其中该信息从API中提取并加载到CoreData中

override func viewDidLoad(){
super.viewDidLoad()
self.showSpinner(onView:self.view)
让teamsByConferenceNetworkManager=teamsByConferenceNetworkManager()
teamsByConferenceNetworkManager.getTeamsByConference(完成:{(数据,错误)在中
guard let data=其他数据{
os_日志(“无法在LoginViewController.viewDidLoad()中展开teamsByConference数据”,类型:。调试)
self.removeSpinner()
让u=UIAlertAction(标题:“网络不可用”,样式:。取消,处理程序:{(警报)在
alert.isEnabled=true
})
返回
}
让dataModelManager=dataModelManager.shared
DispatchQueue.main.sync{
dataModelManager.loadTeamNamesByConference(teamNamesByConferenceName:data)
dataModelManager.loadGamesFromCoreData()
}
如果let=dataModelManager.allGames{
self.removeSpinner()
返回
}否则{
让gamesNetworkManager=gamesNetworkManager()
gamesNetworkManager.getGames{(数据,错误)在中
guard let data=其他数据{
os_日志(“无法在LoginViewController.viewDidLoad()中打开游戏数据”,类型:。调试)
self.removeSpinner()
让u=UIAlertAction(标题:“网络不可用”,样式:。取消,处理程序:{(警报)在
alert.isEnabled=true
})
返回
}
DispatchQueue.main.sync{
dataModelManager.loadGames(gameApiResponses:data)
}
}
}
})
self.removeSpinner()
}

您需要删除此文件

                DispatchQueue.main.sync {
                    dataModelManager.loadGames(gameApiResponses: data)
                }
            }
        }

    })
    self.removeSpinner(). <<<<<< this line 

}
DispatchQueue.main.sync{
dataModelManager.loadGames(gameApiResponses:data)
}
}
}
})
self.removeSpinner()。我认为,在从API获得响应后,需要添加“self.removeSpinner()”。现在,您将同时添加和删除微调器