Eingabeschriftgrad unter iOS

Beispiel herunterladen Das Beispiel herunterladen

Diese plattformspezifische iOS-Plattform wird verwendet, um den Schriftgrad eines Entry zu skalieren, um sicherzustellen, dass der eingegebene Text in das Steuerelement passt. Es wird in XAML verwendet, indem die Entry.AdjustsFontSizeToFitWidth angefügte Eigenschaft auf einen boolean Wert festgelegt wird:

<ContentPage ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
    <StackLayout Margin="20">
        <Entry x:Name="entry"
               Placeholder="Enter text here to see the font size change"
               FontSize="22"
               ios:Entry.AdjustsFontSizeToFitWidth="true" />
        ...
    </StackLayout>
</ContentPage>

Alternativ kann sie über C# mit der Fluent-API genutzt werden:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...

entry.On<iOS>().EnableAdjustsFontSizeToFitWidth();

Die Entry.On<iOS> -Methode gibt an, dass diese plattformspezifische Nur unter iOS ausgeführt wird. Die Entry.EnableAdjustsFontSizeToFitWidth -Methode im Xamarin.Forms.PlatformConfiguration.iOSSpecific Namespace wird verwendet, um den Schriftgrad des eingegebenen Texts zu skalieren, um sicherzustellen, dass er in den Entrypasst. Darüber hinaus verfügt die Entry -Klasse im Xamarin.Forms.PlatformConfiguration.iOSSpecific Namespace auch über eine DisableAdjustsFontSizeToFitWidth -Methode, die diese plattformspezifische Funktion deaktiviert, und über eine SetAdjustsFontSizeToFitWidth Methode, die verwendet werden kann, um die Skalierung des Schriftgrads durch Aufrufen der AdjustsFontSizeToFitWidth -Methode umzuschalten:

entry.On<iOS>().SetAdjustsFontSizeToFitWidth(!entry.On<iOS>().AdjustsFontSizeToFitWidth());

Das Ergebnis ist, dass der Schriftgrad des Entry skaliert wird, um sicherzustellen, dass der eingegebene Text in das Steuerelement passt:

Anpassen des Eingabeschriftgrads plattformspezifisch