4

我想将文档导入我的应用程序。我创建了一个演示来导入文档。演示正在运行。下面是打开Demo的代码UIDocumentPickerViewController

-(IBAction) btnOpenClicked{
    UIDocumentPickerViewController *documentPicker = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:[self allowedUTIs] inMode:UIDocumentPickerModeImport];
    documentPicker.delegate = self;

    [self presentViewController:documentPicker animated:true completion:nil];
}

-(NSArray*)allowedUTIs{
    return @[@"public.data",@"public.content",@"public.audiovisual-content",@"public.movie",@"public.audiovisual-content",@"public.video",@"public.audio",@"public.text",@"public.data",@"public.zip-archive",@"com.pkware.zip-archive",@"public.composite-content",@"public.text"];
}

在我的实际项目中实现了相同的代码。UIDocumentPickerViewController 打开并且应用程序能够导入文件,但问题是在实际应用程序中我无法在标题中看到任何按钮。认为有动作发生,但按钮不可见。请查看演示和实际应用程序的屏幕截图。
在此处输入图像描述 在此处输入图像描述

4

2 回答 2

6

您的应用程序可能正在设置全局UINavigationBar色调颜色外观。您只需UIDocumentPickerViewController将此代码放在application:didFinishLaunchingWithOptions:函数中的某个位置即可重置外观,并且条形按钮将返回其原始蓝色。

if #available(iOS 11.0, *) {
    UINavigationBar.appearance(whenContainedInInstancesOf: [UIDocumentBrowserViewController.self]).tintColor = nil
}
于 2018-04-19T16:52:07.380 回答
0

对于目标 C:

-> 通过将此代码放在您的应用程序中的某个位置:didFinishLaunchingWithOptions:

[[UINavigationBar 
    appearanceWhenContainedInInstancesOfClasses:
      @[[UIDocumentBrowserViewController class]]] setTintColor: nil];
于 2022-01-12T13:20:41.243 回答