Установить цвет заголовка UINavigationBar при составлении письма - PullRequest
0 голосов
/ 26 июня 2019

У меня есть ViewController, который содержит WebView.Когда я нажимаю на ссылку электронной почты (mailto :) в WebView, iOS запускает ViewController, который позволяет пользователю создавать электронную почту.Заголовок на панели навигации этого контроллера имеет черный текст, и я не могу найти способ изменить цвет.Мне удалось изменить цвет фона панели навигации, а также цвет текста кнопки, но не цвет заголовка.

Я кодирую это приложение в Xamarin (C #), но я должен иметь возможность переводитьКод Swift / Objective C, если предоставляется в качестве решения.

В моем делегате приложения я установил некоторые настройки по умолчанию для темы.

UINavigationBar.Appearance.BarStyle = UIBarStyle.Black;
UINavigationBar.Appearance.BarTintColor = UIColor.Red;
UINavigationBar.Appearance.Translucent = false;
UINavigationBar.Appearance.TintColor = UIColor.White;
UINavigationBar.Appearance.SetTitleTextAttributes(new UITextAttributes()
{
    TextColor = UIColor.White           
});

UINavigationBar.Appearance.TitleTextAttributes.ForegroundColor = UIColor.White;
UIButton.AppearanceWhenContainedIn(typeof(UINavigationBar)).TintColor = UIColor.White;

Я также установил this.NavigationController.NavigationBar.BarStyle = UIBarStyle.Black; в каждом из моих контроллеров ViewController.Я предполагаю, что это где проблема.Я не могу установить BarStyle в контроллере представления электронной почты для составления, и он не использует глобальное значение внешнего вида.

1 Ответ

0 голосов
/ 28 июня 2019

В Xamarin.IOS:

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

UIStringAttributes uIStringAttributes = new UIStringAttributes();
uIStringAttributes.ForegroundColor = UIColor.YouWantColor; //such as UIColor.Green
NavigationController.NavigationBar.TitleTextAttributes = uIStringAttributes;

enter image description here

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

NavigationController.NavigationBar.BarTintColor = UIColor.YouWantColor;
// Color you want, such as UIColor.Green

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...