2017-11-26 9 views
2

私のUIDocumentPickerのナビゲーションバーのiOS 11のみで問題が発生しました。完了、キャンセル、または編集ボタンは表示されず、ユーザーがタッチすると、状態は白で、たとえ変更してもUINavigationBar.appearnce().tintColor、色はタッチでのみ変更されます。私はあなたがObjective-Cを使用してUIDocumentPickerのサブクラスを作り、[UINavigationBar appearance].tintColor = [UIColor black];viewWillAppearでFUNCを設定し、viewWillDisappearであなたのデフォルトにリセットした場合、それがうまく機能することを考え出した、未知の理由のためUIDocumentPickerナビゲーションバーのボタンがiOS 11で非表示にされている

enter image description here enter image description here

+0

'UINavigationBar.appearance()のために。tintColor = tintColor'は仕事をしなければなりません。 – Vyacheslav

+0

私はまったく同じ問題を抱えています!ボタンは表示されませんが、タップすると動作しています.. – franswa

答えて

0

使用CustomDocumentPickerViewController UINavigationBarUIBarButtonItem

import UIKit 

class CustomDocumentPickerViewController: UIDocumentPickerViewController { 

    override func viewWillAppear(_ animated: Bool) { 
     super.viewWillAppear(animated) 

     UINavigationBar.appearance().tintColor = UIColor.black 
     UIBarButtonItem.appearance().setTitleTextAttributes([NSForegroundColorAttributeName : UIColor.black], for: .normal) 
    } 

    override func viewWillDisappear(_ animated: Bool) { 
     super.viewWillDisappear(animated) 

     UINavigationBar.appearance().tintColor = UIColor.white // your color 
     UIBarButtonItem.appearance().setTitleTextAttributes(nil, for: .normal) 
    } 

} 
2

しかし、同じ手順をswiftを使って実行すると、それはありません。黒appearance

+0

正解&その作業... –

関連する問題