Xamarin Forms где изменить StatusBar для Android и IOS - PullRequest
0 голосов
/ 30 января 2020

enter image description here

Я использую Xamarin.Forms и хочу, чтобы навигация по всем страницам имела # 84DCC6. Он добавляет, но я не хочу, чтобы синий цвет сверху (по умолчанию в Android проекте) страницы навигации, я хочу иметь только один цвет # 84DCC6. Это мой код в App.xaml


<Application.Resources>
        <ResourceDictionary>

        <Style TargetType="NavigationPage">
            <Setter Property="BarBackgroundColor" Value="#84DCC6" />
            <Setter Property="BarTextColor" Value="Black" />
        </Style>
        </ResourceDictionary>
    </Application.Resources>

Я тестирую свое приложение на Xiaomi A2 Lite. Любые предложения, чтобы быть только одним цветом # 84DCC6

1 Ответ

2 голосов
/ 30 января 2020

Синий цвет, о котором вы говорите, - это не панель навигации, а строка состояния.

Android:

вы можете изменить его цвет из Стили . xml файл, расположенный под вашим android проектом Resource folder:

<!-- colorPrimaryDark is used for the status bar -->
<item name="colorPrimaryDark">#1eb6ed</item>

iOS

используйте этот код ниже в вашем классе делегата приложения

var statusBar = UIApplication.SharedApplication.ValueForKey(new NSString("statusBar")) as UIView;
            if (statusBar.RespondsToSelector(new ObjCRuntime.Selector("setBackgroundColor:")))
            {
                statusBar.BackgroundColor = UIColor.FromRGB(132, 220, 198);
                statusBar.TintColor = UIColor.Black;
            }
...