私は Objective-C の経験がなく、これが Swift の最初の試みです。Xcode をコンパイルできません。(必要な行が1つか2つ欠けている可能性もありますが、コンパイルできれば、通常は残りを把握できます)
私はすべてのドキュメントを読み始めましたが、そこに答えがあるかどうかを知るのに十分ではありません:
http://bustoutsolutions.github.io/siesta/guide/objc/
https://bustoutsolutions.github.io /シエスタ/api/
私のコード:
// MyAPI.swift
import Siesta
import SwiftyJSON
@objc class MyAPI: Service {
internal static let instance = MyAPI(baseURL:"https://api.example.com")
}
// ViewController.mm
#import "ViewController.h"
#import "PlateScanner.h"
#import "Plate.h"
#import "MyProject-swift.h"
...
- (IBAction)callAPI:(id)sender
{
[[MyAPI.instance resource:@"/profile/"] child:@"123"];
}
-(void)resourceChanged: (BOSResource*) resource event: (NSString*) event {
if([event hasPrefix:@"NewData"]) {
NSLog(@"%@",[resource text]);
}
}
...
ViewController.mm から次の 2 つのエラーが表示され
ます
。
タイプ
このことから、ViewController が必要な BOSResource タイプを理解していないことがわかりましたが、Swift ライブラリを適切にインポートする方法がわかりません。
Xcode 生成コード:
//MyProject-swift.h
...
SWIFT_CLASS("_TtC10MyProject5MyAPI")
@interface MyAPI : BOSService
+ (MyAPI * _Nonnull)instance;
@end
...
"@interf..." で始まる行にエラーがあります: 「MyAPI」のスーパークラスである「BOSService」のインターフェイス宣言が見つかりません
どんな助けでも大歓迎です!