示例#1
0
        public override void DidRequestDocumentCreation(UIDocumentBrowserViewController controller, Action <NSUrl, UIDocumentBrowserImportMode> importHandler)
        {
            var editController = new FileNameInputViewController(_extensions);

            void OnEditControllerOnOnViewDidDisappear(object sender, EventArgs args)
            {
                editController.OnViewDidDisappear -= OnEditControllerOnOnViewDidDisappear;

                if (string.IsNullOrEmpty(editController.FileName))
                {
                    importHandler(null, UIDocumentBrowserImportMode.None);
                    return;
                }

                var documentFolder = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
                var tempFileName   = editController.FileName;

                var path     = Path.Combine(documentFolder, tempFileName);
                var tempFile = File.Create(path);

                tempFile.Dispose();

                importHandler(NSUrl.CreateFileUrl(path, false, null), UIDocumentBrowserImportMode.Move);
            }

            editController.OnViewDidDisappear += OnEditControllerOnOnViewDidDisappear;

            controller.PresentViewController(editController, true, null);
        }
示例#2
0
 public override void DidImportDocument(UIDocumentBrowserViewController controller, NSUrl sourceUrl, NSUrl destinationUrl)
 {
     OnFilePicked(destinationUrl);
 }
示例#3
0
 public override void DidPickDocumentsAtUrls(UIDocumentBrowserViewController controller, NSUrl[] documentUrls)
 {
     OnFilePicked(documentUrls[0]);
 }