Mac 應用程序的開發比較少,所以搜索的資料比較少,這里記錄一下我自己的經驗,以作備份。
如圖可以在sandbox中勾選自己需要的權限和文件夾訪問權限,里面有一個User Selected File,這個比較實用
1.png
為此我們可在需要選擇文件夾的地方添加如下代碼
__weak typeof(self)weakSelf = self;
NSOpenPanel* panel = [NSOpenPanel openPanel];
panel.canCreateDirectories = YES;
panel.canChooseDirectories = YES;
panel.canChooseFiles = YES;
[panel setAllowsMultipleSelection:NO];
[panel beginSheetModalForWindow:self.view.window completionHandler:^(NSInteger result)
{
if (result == NSModalResponseOK)
{
//NSURL *pathUrl = [panel URL];
NSString *pathString = [panel.URLs.firstObject path];
weakSelf.urlTextField.stringValue = pathString;
}
}];
// [panel beginWithCompletionHandler:^(NSInteger result){}];
需要提的是此方法需要在window創建成功以后調用,否則會報 unknow window class;