StatusBarBehavior
Die StatusBarBehavior
ermöglicht das Anpassen der Farbe und des Stils einer Gerätestatusleiste.
Die StatusBarBehavior
wendet die Farb- und Formatvorlagenwerte 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 die Formatvorlage an, wenn zu der Seite navigiert wurde.
Hinweis
Wenn Ihre Anwendung die Statusleistendarstellung auf Seitenbasis ändert, sollten Sie den StatusBarApplyOn.OnPageNavigatedTo
-Wert für die ApplyOn
-Eigenschaft verwenden. Andernfalls wird beim Navigieren zurück die Statusleistendarstellung von der Seite von welcher der Benutzer navigiert ist und nicht von der neuen beibehalten.
Wichtig
.NET MAUI Community Toolkit Behaviors legt den BindingContext
eines Verhaltens nicht fest, da Verhalten ü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"
Der folgende Abschnitt:
<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 dann geändert werden, um xmlns
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
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#
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 Codeschnipsel sehen:
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 den OnAppearing
- oder OnNavigatedTo
-Methoden des MainPage
-Konstruktors hinzufügen möchten, verwenden Sie stattdessen Behavior
.
Die direkte Verwendung an diesen Stellen kann Ihre Anwendung zum Absturz bringen, da die plattformspezifischen Komponenten möglicherweise nicht initialisiert werden.
Konfiguration
Eigenschaften
Eigenschaft | Typ | Beschreibung |
---|---|---|
ApplyOn | StatusBarBehavior | Wann die Statusleistenfarbe und -formatvorlage angewendet werden soll. |
StatusBarColor | Color | Der Color -Name aus dem Microsoft.Maui.Graphics-Namespace |
StatusBarStyle | StatusBarStyle | Der von der Statusleiste verwendete Stil kann LightContent, DarkContent oder Default sein. |
Beispiele
Sie finden ein Beispiel für dieses Verhalten in Aktion in der Beispielanwendung für das .NET MAUI Community Toolkit.
API
Sie finden den Quellcode für StatusBarBehavior
über das GitHub-Repository für das .NET MAUI Community Toolkit.
.NET MAUI Community Toolkit