Как заставить IKImageEditPanel работать в swift

Я знаю, что могу дважды щелкнуть IKImageView и вызвать панель редактирования. И в Objective C I можно сделать это

- (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)

    }

1 ответ

Решение

С яблочных форумов....

Мне нужно было сказать IKImageView, что он должен соответствовать IKImageEditPanelDataSource. (Он уже делает это, но мне пришлось явно сказать об этом тихому компилятору).

Вне любого класса...

extension IKImageView: IKImageEditPanelDataSource {


}
Другие вопросы по тегам