2016-04-05 13 views
0
için ilk dizinin ayarlanması

Kullanıcının, günlük dosyalarını içeren bir klasörden dosya seçmesini sağlamaya çalışıyorum. Bu yüzden o klasörün içeriğini gösteren bir NSOpenDialog görüntülemek istiyorum. Swift kullanıyorum, bu yüzden 10.9+NSOpenPanel

Burada bu konuyla ilgili bir dizi konu görüyorum, ancak Swift'e dönüştürülen aynı kod gibi görünen şeyi denemeye rağmen, her zaman Belgeler klasörüne geri döner.

let fd: NSOpenPanel = NSOpenPanel() 
    fd.directoryURL = NSURL.fileURLWithPath("~/LauncherLogs", isDirectory: true) 
    fd.canChooseDirectories = false 
    fd.canChooseFiles = true 
    fd.allowedFileTypes = ["log"] 
    fd.runModal() 

söz konusu klasör mevcut ve kopyalayıp Klasör ... Bulucu orada gider de Go içine yolunu yapıştırarak vermez: İşte bir örnek verilmektedir. Herhangi bir fikir?

+1

şiddetle gerçek yolu ... –

cevap

2

Sen tilde genişletmek gerekiyor ve NSString bu yüzden için bir el yöntemi vardır: Martin için

let launcherLogPathWithTilde = "~/LauncherLogs" as NSString 
    let expandedLauncherLogPath = launcherLogPathWithTilde.stringByExpandingTildeInPath 
    fd.directoryURL = NSURL.fileURLWithPath(expandedLauncherLogPath, isDirectory: true) 

+1 upvote o söz için.

+0

için tilde genişletmek olduğunu varsayalım Ve bu NSURL.fileURLWithPath' açılımlar yapacağını 'varsayarak için ne elde ... * iç çekme * Ben karşı başımı vurarak hatırlıyorum –

+0

bununla da duvar! Kullanıcı dostu elma cihazları ve sistemleri olduğu için, kesinlikle geliştirici dostu değildir ve en iyisi, son derece soyut değildir. –