Итак, я пытаюсь выполнить учебник из wsdl2code, где они реализуют протоколы obj-c в делете приложения (весь проект находится в объективе-c).Swift не соответствует протоколу Objective-C
Я пытаюсь воссоздать его быстро, но мне постоянно говорят, что я не согласен с протоколом. Я убедился, что типы, используемые в быстрых версиях методов, корректно переходят от объективного к к быстрому.
Вот Objective-C заголовок
#ifndef _Wsdl2CodeProxyDelegate
#define _Wsdl2CodeProxyDelegate
@protocol Wsdl2CodeProxyDelegate
//if service recieve an error this method will be called
-(void)proxyRecievedError:(NSException*)ex InMethod:(NSString*)method;
//proxy finished, (id)data is the object of the relevant method service
-(void)proxydidFinishLoadingData:(id)data InMethod:(NSString*)method;
@end
#endif
Вот мой скор код
class AppDelegate: UIResponder, UIApplicationDelegate, Wsdl2CodeProxyDelegate {
// MARK: Proxy protocol methods
func proxydidFinishLoadingData(data: AnyObject!, inMethod method: String!) {
print("Service \(method) done!")
}
func proxyRecievedError(ex: NSException!, inMethod method: String!) {
print("Exception in service \(method)")
}
В дополнение к тому, что указывает Итан ниже, имена методов слабо названы (... InMethod) в t он заголовок ObjC, но в быстром режиме вы используете «inMethod» –
Это то, что требует xcode. Это верблюд делает это, и если я меняю его, то он говорит мне, что это не похоже на метод –