Я использую Моя сеть в моем проекте iOS.Я создал класс, у которого есть метод ниже:
class UserAdapter{
static func getUsers(amount:Int=2, gender:Gender = .Male, success successCallback: @escaping ([UserModelMain]) -> Void, error errorCallback: @escaping (Swift.Error) -> Void, failure failureCallback: @escaping (MoyaError) -> Void) {
let endpointClosure = { (target: UserTarget) -> Endpoint<UserTarget> in
let defaultEndpoint = MoyaProvider.defaultEndpointMapping(for: target)
return defaultEndpoint.adding(newHTTPHeaderFields: ["": ""])
}
let provider = MoyaProvider<UserTarget>(endpointClosure: endpointClosure, plugins: [NetworkLoggerPlugin(verbose: true), NetworkActivityPlugin(networkActivityClosure: { (activity, target) in
switch activity
{
case .began:
print("Network Activity began")
UIApplication.shared.isNetworkActivityIndicatorVisible = true
case .ended:
print("Network Activity ended")
UIApplication.shared.isNetworkActivityIndicatorVisible = false
}
})])
provider.request(.getUsers(amount: amount, gender: gender)) { (result) in
switch result {
case .success(let response):
//TODO
}
}
} }
Я звоню из моего контроллера вида:
UserAdapter.getUsers(amount: 8, gender: .Female, success: { (response) in
}, error: { (error) in
// show error from server
}, failure: { (error) in
// show Moya error
})
Вместо UIApplication.shared.isNetworkActivityIndicatorVisible
мне нужно использовать любую пользовательскую библиотеку загрузки, такую как, NVActivityIndicatorView .Как это сделать?