Я хочу, чтобы иметь возможность открыть изображение в Swift. Это мой первый проект Swift.Подробные инструкции по использованию NSOpenPanel
@IBAction func SelectFileToOpen(sender: NSMenuItem) {
var openPanel = NSOpenPanel();
openPanel.allowsMultipleSelection = false;
openPanel.canChooseDirectories = false;
openPanel.canCreateDirectories = false;
openPanel.canChooseFiles = true;
let i = openPanel.runModal();
if(i == NSOKButton){
print(openPanel.URL);
var lettersPic = NSImage(contentsOfURL: openPanel.URL!);
imageView.image = lettersPic;
}
}
Выход из моих NSLog
при использовании открытой панели
Optional(file:///Users/ethansanford/Desktop/BigWriting.png)
fatal error: unexpectedly found nil while unwrapping an Optional value
Как я могу позволить пользователю открыть файл PNG интерес. Когда я указываю один и тот же файл в коде, все работает хорошо. Пример меня указывающий, какой файл открыть в коде, не используя открытую файловую панель и действует как пользователь:
let pictureURl = NSURL(fileURLWithPath: "///Users/ethansanford/Desktop/BigWriting.png");
var lettersPic = NSImage(contentsOfURL: pictureURl!);
imageView.image = lettersPic;
Есть проблема с форматом моего URL или что-то? Любая помощь будет оценена по достоинству.
Если с моим кодом сложно найти что-то неправильное. Я был бы доволен примером, любой пример nsopenpanel используется для открытия png, который работал. Из того, что я могу сказать, существует другой способ использования nsopenpanel с помощью обработчика завершения. – jiminybob99