0
我正試圖將我的項目遷移到Swift,並開始通過將#imports的Objective-C Bridger文件填充到相關的.h文件中。我詳盡地檢查了Build Settings選項和路徑是否正確。我創建了一個UITableViewController迅捷的文件看起來是這樣的:Objective-C橋接頭不適用於Swift文件
TableViewController.swift
class TableViewController {
var title: String = ""
var summary: String = ""
override init(style: UITableViewStyle) {
super.init(style: style)
}
override func viewDidLoad() {
super.viewDidLoad()
title = UIResources.getString(settingsKey, withSuffix: "title")
summary = UIResources.getString(settingKey, withSuffix: "summary")
}
...
}
然而,每行開頭的第一個覆蓋導致這樣的錯誤
初始化器不會超越來自其超類的指定初始化器
和
「超級」的成員不能在根類
引用我用Objective-C的工作相當陌生,所以我不知道我需要改變,如果任何東西。這也是我在橋接報頭中導入的類的.h文件。我真的很難過這個。
TableViewController.h
#import <UIKit/UIKit.h>
@class TableViewController
@protocol TableViewControllerDelegate <NSObject>
- (void) tableViewControllerDidSave: (UIViewController *)controller forKey:(NSString *)key withNewValue:(id) value;
@end
@interface TableViewController : UITableViewController
@property (strong, nonatomic) id <TableViewControllerDelegate> delegate;
@property (strong, nonatomic) NSString *settingKey;
@property (strong, nonatomic) id stringValue;
@end
你應該看看'@interface TableViewController:UITableViewController',看看你可以在Swift類的TableViewController中做不同的操作。提示:你的班級應該是一個子班。 – Laffen
對,我通過在類上添加委託代碼並將變量添加到TableVC類來計算出來。謝謝! –
您能否發佈包含結果的問題更新(作爲未來讀者的答案)? – Laffen