StatusBarBehavior

Dies StatusBarBehavior ermöglicht das Anpassen der Farbe und des Stils einer Gerätestatusleiste.

Das StatusBarBehavior wendet die Farb- und Stilwerte an, wenn die Eigenschaften aktualisiert werden. Die Werte werden auch basierend auf der ApplyOn Eigenschaft angewendet, mit dieser Eigenschaft kann definiert werden, welches Lebenszyklusereignis verwendet wird:

  • StatusBarApplyOn.OnBehaviorAttachedTo – Wendet die Farbe und die Formatvorlage an, wenn das Verhalten an eine Seite angefügt wurde. Dies ist die Standardeinstellung.
  • StatusBarApplyOn.OnPageNavigatedTo – Wendet die Farbe und den Stil an, wenn zur Seite navigiert wurde.

Note

Wenn Ihre Anwendung die Statusleistendarstellung auf Seitenbasis ändert, sollten Sie den StatusBarApplyOn.OnPageNavigatedTo Wert für die ApplyOn Eigenschaft verwenden. Andernfalls behält das System beim Zurücknavigieren die Darstellung der Statusleiste von der Seite bei, von der der Benutzer weg- und nicht zu der er navigiert hat.

Important

Die .NET MAUI Community Toolkit Behaviors legen die BindingContext eines Verhaltens nicht fest, da Verhaltensweisen über Stile freigegeben und auf mehrere Steuerelemente angewendet werden können. Weitere Informationen finden Sie unter .NET MAUI Behaviors

Syntax

XAML

Einbinden des XAML-Namespace

Um das Toolkit in XAML verwenden zu können, muss der folgende xmlns-Abschnitt zu Ihrer Seite oder Ansicht hinzugefügt werden:

xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"

Daher das Folgende:

<ContentPage
    x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">

</ContentPage>

Würde geändert werden, um das xmlns wie folgt einzubinden:

<ContentPage
    x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit">

</ContentPage>

Verwenden von StatusBarBehavior

Dies StatusBarBehavior kann wie folgt in XAML verwendet werden:

<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
             x:Class="MyLittleApp.MainPage">
    
    <ContentPage.Behaviors>
        <toolkit:StatusBarBehavior StatusBarColor="Fuchsia" StatusBarStyle="LightContent" />
    </ContentPage.Behaviors>

</ContentPage>

C#

Dies StatusBarBehavior kann wie folgt in C# verwendet werden:

class MyPage : ContentPage
{
    public MyPage()
    {
        this.Behaviors.Add(new StatusBarBehavior
        {
            StatusBarColor = Colors.Red,
            StatusBarStyle = StatusBarStyle.LightContent
        });
    }
}

Es gibt eine weitere Möglichkeit, auf die Statusleisten-APIs in C# zuzugreifen, Sie können die Methoden direkt aufrufen, wie Sie im folgenden Codeausschnitt sehen können:

class MyPage : ContentPage
{
    protected override void OnNavigatedTo(NavigatedToEventArgs args)
    {
        base.OnNavigatedTo(args);
        CommunityToolkit.Maui.Core.Platform.StatusBar.SetColor(statusBarColor);
        CommunityToolkit.Maui.Core.Platform.StatusBar.SetStyle(StatusBarStyle.LightContent);
    }
}

Warnung

Wenn Sie diesen Code zum Konstruktor von MainPage oder zu den Methoden OnAppearing bzw. OnNavigatedTo hinzufügen möchten, verwenden Sie stattdessen Behavior. Die direkte Verwendung an diesen Stellen kann ihre Anwendung abstürzen, da die plattformspezifischen Komponenten möglicherweise nicht initialisiert werden.

Konfiguration

Es sind keine Änderungen erforderlich.

Eigenschaften

Eigentum Typ Beschreibung
ApplyOn StatusBarBehavior Wann Farbe und Stil der Statusleiste angewendet werden
StatusBarColor Farbe Der name Color aus dem Microsoft. Maui.Graphics-Namespace.
StatusBarStyle StatusBarStyle Der für die Statusleiste verwendete Stil kann LightContent, DarkContent oder Default sein.

Beispiele

Sie finden ein Beispiel für dieses Verhalten in Aktion in der .NET MAUI Community Toolkit-Beispielanwendung.

API

Sie finden den Quellcode für StatusBarBehavior im .NET MAUI Community Toolkit GitHub Repository.