如何让 IKImageEditPanel 在 swift 中工作
How to get IKImageEditPanel to work in swift
我知道我可以双击 IKImageView 并调出编辑面板。在 Objective C 我可以做到
- (IBAction)editPanel:(id)sender {
IKImageEditPanel *editor = [IKImageEditPanel sharedImageEditPanel];
[editor setFrameOrigin:NSMakePoint(400,200)];
[editor setDataSource:imageView]; // Here imageView is your IKImageView.
[editor makeKeyAndOrderFront:nil];
}
但是,当我尝试在 swift 中设置数据源时,我收到一条错误消息,说我无法分配这种类型的 IKImageView!到 IKImageEditPanelDataSource 类型的值!
这是我的代码:
@IBAction func adjustments(sender: NSToolbarItem) {
let editor = IKImageEditPanel.sharedImageEditPanel()
editor.setFrameOrigin(NSPoint(x: 400, y: 200))
editor.dataSource = imageView //Error on this line
editor.makeKeyAndOrderFront(nil)
}
来自苹果论坛....
我需要告诉 IKImageView 它应该符合 IKImageEditPanelDataSource。 (它已经这样做了,但我不得不明确地对安静的编译器这么说)。
在任何class之外...
extension IKImageView: IKImageEditPanelDataSource {
}
我知道我可以双击 IKImageView 并调出编辑面板。在 Objective C 我可以做到
- (IBAction)editPanel:(id)sender {
IKImageEditPanel *editor = [IKImageEditPanel sharedImageEditPanel];
[editor setFrameOrigin:NSMakePoint(400,200)];
[editor setDataSource:imageView]; // Here imageView is your IKImageView.
[editor makeKeyAndOrderFront:nil];
}
但是,当我尝试在 swift 中设置数据源时,我收到一条错误消息,说我无法分配这种类型的 IKImageView!到 IKImageEditPanelDataSource 类型的值!
这是我的代码:
@IBAction func adjustments(sender: NSToolbarItem) {
let editor = IKImageEditPanel.sharedImageEditPanel()
editor.setFrameOrigin(NSPoint(x: 400, y: 200))
editor.dataSource = imageView //Error on this line
editor.makeKeyAndOrderFront(nil)
}
来自苹果论坛....
我需要告诉 IKImageView 它应该符合 IKImageEditPanelDataSource。 (它已经这样做了,但我不得不明确地对安静的编译器这么说)。
在任何class之外...
extension IKImageView: IKImageEditPanelDataSource {
}