0

HTML5 アプリを作成し、そのラッパーを Mac 用の Cocoa で作成しています。URL を受け取り、ユーザーがそれをディスクに保存できるようにするメソッドを作成中です。これまでの方法は次のとおりです。

- (void) downloadFile: (NSString *) url {

    NSSavePanel * savePanel = [NSSavePanel savePanel];
    [savePanel setAllowedFileTypes: @[@"png"]];
    [savePanel setNameFieldStringValue:@"test"];
    [savePanel beginWithCompletionHandler:^(NSInteger result){
        //NSArray * files = [[openDlg URLs] valueForKey: @"relativePath"];
        //[resultListener chooseFilenames: files]  ;
    }];
    [savePanel runModal];

}

ただし、メソッドを呼び出すと (ウィンドウが作成されてからしばらく経ちます)、アプリがクラッシュし、コンソールに次のエラーが表示されます: 2013-07-21 18:23:05.067 Reditr[31458:d11f] RVS:__54-[NSRemoteSavePanel _runOrderingOperationWithContext: ]_block_invoke_0319 : ウィンドウの待機中にタイムアウトが発生しました

4

1 に答える 1

0

-runModalと の両方を使用したくありません-beginWithCompletionHandler:。どちらかを使用してください (できれば後者を使用してください)。

于 2013-07-21T21:38:08.247 に答える