Кнопки не видны в UIDocumentPickerViewController

Я хочу импортировать документ в свое приложение. Я создал демо для импорта документа. Демо работает. ниже приведен код демо для открытия 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 открыт, и приложение может импортировать файл, но проблема в том, что в реальном приложении я не вижу никаких кнопок в заголовке. думал, что есть действие, но кнопки не видны. Пожалуйста, проверьте скриншот демо и актуальное приложение.

2 ответа

Ваше приложение, вероятно, устанавливает глобальный UINavigationBar подкрасить внешний вид. Вы можете просто сбросить внешний вид для UIDocumentPickerViewController только поместив этот код где-то в вашем application:didFinishLaunchingWithOptions: кнопки и кнопки вернутся к исходному синему цвету.

if #available(iOS 11.0, *) {
    UINavigationBar.appearance(whenContainedInInstancesOf: [UIDocumentBrowserViewController.self]).tintColor = nil
}

Для цели C:

-> поместив этот код где-нибудь в вашем приложении: didFinishLaunchingWithOptions:

      [[UINavigationBar 
    appearanceWhenContainedInInstancesOfClasses:
      @[[UIDocumentBrowserViewController class]]] setTintColor: nil];
Другие вопросы по тегам