Implementare un directory picker in Swift

Mattepuffo's logo
Implementare un directory picker in Swift

Implementare un directory picker in Swift

In un precedente articolo abbiamo visto come implementare un file picker in Swift.

Oggi vediamo come implementare un directory picker.

Se confrontate i due codici, vi rendete conto come l'oggetto NSOpenPanel sia stato pensato in maniera facilmente riusabile; bastano poche modifiche per passare da uno all'altro.

Ecco il nostro esempio:

import SwiftUI

struct ContentView: View {
    var body: some View {
        Button(action: {
            choose();
        }) {
            Text("Premi");
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

func choose() {
    let dialog = NSOpenPanel();
    dialog.title  = "Scegli...";
    dialog.showsResizeIndicator = false;
    dialog.showsHiddenFiles = false;
    dialog.canChooseDirectories = true;
    dialog.canChooseFiles = false;
    
    if(dialog.runModal() == NSApplication.ModalResponse.OK) {
        let result = dialog.url;
        
        if (result != nil) {
            let path: String = result!.path;
            print(path);
        }
    }
}

Enjoy!


Share this Post

Commentami!