我正在开发我以前在 Objective C 上完成的应用程序之一。我需要向它添加一个新模块,我决定对那个特定模块使用 Swift。
我有一个HomePage
在 Objective C 中调用的类,我想在其中添加一些新IBAction
的 s 和IBOutlet
s。为此,我添加了一个新的 swift 文件并扩展了现有的类,例如:
// MARK: IBOutlets and IBActions
extension HomePage
{
@IBOutlet var image : UIImageView!
...
/*!
* Loads the application support webpage
*/
@IBAction func loadSupportURL(sender : UIButton)
{
}
...
}
如果我只添加 IBActions,一切都会完美运行。但是当我添加 IBOutlet 时,编译器会抛出如下错误:
扩展可能不包含存储的属性
为了修复它,我有两种方法,
- 在我的 Objective C 类本身中声明出口
- 将整个 Objective C 类转换为 Swift 并在那里声明属性
有没有其他方法可以解决这个问题?