Salesforce'un SDK'sını kullanan mevcut bir Sample Objective-C uygulamasına sahibim. Bir kerede Swift tek sınıf kullanmak için onu dönüştürmeye çalışıyorum. Salesforce SDK'sının 'SFRestDelegate' temsilcisine sahip 'SFRestRequest.h' adlı bir sınıfı var.Swift'de Objective-C'de yazılmış bir temsilci yöntemini kullanmaya çalışmak, "Protokol Bildirimi bulamıyor" atar
Objective C'de, UITableViewController'ın bir alt sınıfı olan 'RootViewController.h' adlı bir sınıf var. SFRestDelegate uygular. İyi çalışıyor.
//RootViewController.h
#import <UIKit/UIKit.h>
#import "SFRestAPI.h"
@interface RootViewController : UITableViewController <SFRestDelegate> {
NSMutableArray *dataRows;
IBOutlet UITableView *tableView;
}
Ben RootViewController Amaç-c sınıfı değiştirmek için bir RootVC.swift dosyası oluşturmak için çalışıyorum.
Ben
//SwiftForce-Bridging-Header.h
#import "SFRestAPI.h"
#import "SFRestRequest.h"
Benim RooVC.Swift dosya benziyor amaç-c ithal edilmektedir tüm bu başlıkları ithal bir köprü başlık dosyası vardır: Ben komuta eğer
import UIKit
class RootVC: UITableViewController,SFRestDelegate {
..
..
}
Şimdi + SFRestDelegate tıklayın, doğru bir şekilde protokol uygulamasına gider. Ben oluşturmaya çalışırsanız Ancak, ben olsun .. "Protokolü bildirimi SFRestDelegate Hatası bulamıyor
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
herhangi bir yardım takdir Sen uygulamayı indirerek test edebilirsiniz:!. https://github.com/rajaraodv/SwiftForce
MytDelegate bir yazım hatası mı? – Dash
Hayır. Bu yazdığımda sadece bir yazım hatasıydı. –