2016-11-03 4 views
3

В настоящее время я испытываю трудности с установкой цветов Отмена и Отправка при переходе на MFMailComposeViewController в iOS 10 с помощью swift 3. Я попытался установить оттенок UINavigationController MFMailComposeViewController, Бар и предметы без успеха. Любая помощь приветствуется.Set Navigation Bar Colour Items в MFMailComposeViewController

What my current MFMailComposeViewController looks like

Как открыть MFMailComposeViewController:

/* Open mail for the user to send a help emaail with questions about the app */ 
    func sendEmail() { 

     if MFMailComposeViewController.canSendMail() { 

      let mail = MFMailComposeViewController() 
      mail.mailComposeDelegate = self 
      mail.setToRecipients(["[email protected]"]) 
      mail.navigationBar.tintColor = UIColor.blue 

      present(mail, animated: true) 

     } 
    } 

    /* Called when mail is dismissed */ 
    func mailComposeController(_ controller: MFMailComposeViewController, didFinishWith result: MFMailComposeResult, error: Error?) { 
     controller.dismiss(animated: true) 
    } 
+0

Попробуйте установить оттенок самого представления контроллера сочинить в. –

+0

@LeoNatan попытался добавить 'self.navigationController? .navigationBar.tintColor = UIColor.blue' до инициализации почтового объекта, и это не помогло. – user3459799

+0

Нет. Попробуйте 'mail.view.tintColor = .blue' –

ответ

2

Если вы хотите навигационный цвет для всего вашего приложения, то есть оттенки кнопок соответствуют всему приложению, вы можете попробовать это:

Внутри func application(_ application: UIApplication, didFinishLaunchingWithOptions от AppDelegate

// Custom color for navigation bar 
UINavigationBar.appearance().tintColor = UIColor.whateverTintColorYouWant 
UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName : UIColor.whateverTextColorYouWant] 

Если бы вы только, как это для MailViewController попробовать это:

// Custom color for navigation bar 
mail.navigationController?.navigationBar.tintColor = UIColor.aColorYouwant 
mail.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName : UIColor.aColorYouWant] 
+0

Я мог установить цвет фона и заголовка из AppDelegate. Я не смог установить цвета кнопок, поэтому в итоге я изменил цвета фона и названия, чтобы работать с кнопками while, чтобы они стали видимыми. Спасибо за помощь. – user3459799