Ich verfüge über eine Beispiel-Objective-C-App, die Salesforce-SDK verwendet. Ich versuche es zu konvertieren, um Swift One-Class zu einer Zeit zu verwenden. Salesforce SDK verfügt über eine Klasse mit dem Namen 'SFRestRequest.h' mit dem Delegaten 'SFRestDelegate'.Wenn Sie versuchen, eine in Objective-C in Swift geschriebene Delegatmethode zu verwenden, wird "Protokollprotokoll nicht gefunden" angezeigt.
In Objective C habe ich eine Klasse namens "RootViewController.h", die eine Unterklasse von UITableViewController ist. Es implementiert SFRestDelegate. Es funktioniert gut.
//RootViewController.h
#import <UIKit/UIKit.h>
#import "SFRestAPI.h"
@interface RootViewController : UITableViewController <SFRestDelegate> {
NSMutableArray *dataRows;
IBOutlet UITableView *tableView;
}
Ich versuche, eine RootVC.swift-Datei zu erstellen, um RootViewController Objective-C-Klasse zu ersetzen.
Ich habe eine Überbrückung Header-Datei, die alle diese Header importiert, die
in Objective-c importiert werden//SwiftForce-Bridging-Header.h
#import "SFRestAPI.h"
#import "SFRestRequest.h"
Meine RooVC.Swift Datei wie folgt aussieht:
import UIKit
class RootVC: UITableViewController,SFRestDelegate {
..
..
}
Nun, wenn ich befehle + Klicken Sie auf das SFRestDelegate, es geht korrekt zur Protokollimplementierung. Allerdings, wenn ich zu bauen versuchen, erhalte ich .. "nicht SFRestDelegate Fehlerprotokoll Erklärung
SWIFT_CLASS("_TtC10SwiftForce6RootVC")
@interface RootVC : UITableViewController <SFRestDelegate>
@property (nonatomic) NSArray * dataRows;
- (instancetype)initWithStyle:(UITableViewStyle)style OBJC_DESIGNATED_INITIALIZER;
- (void)viewDidLoad;
- (void)didReceiveMemoryWarning;
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
@end
Jede mögliche Hilfe schätzen finden können Sie es aus durch den Download der App testen können:. https://github.com/rajaraodv/SwiftForce
Ist MytDelegate ein Tippfehler? – Dash
Nein. Das war nur ein Tippfehler, als ich das schrieb. –