Condividi tramite


Primo risponditore di VisualElement in iOS

Questa piattaforma iOS specifica della piattaforma consente a un VisualElement oggetto di diventare il primo risponditore agli eventi di tocco, anziché alla pagina contenente l'elemento. Viene utilizzata in XAML impostando la VisualElement.CanBecomeFirstResponder proprietà associabile su true:

<ContentPage ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout>
        <Entry Placeholder="Enter text" />
        <Button ios:VisualElement.CanBecomeFirstResponder="True"
                Text="OK" />
    </StackLayout>
</ContentPage>

In alternativa, può essere usato da C# usando l'API Fluent:

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

Entry entry = new Entry { Placeholder = "Enter text" };
Button button = new Button { Text = "OK" };
button.On<iOS>().SetCanBecomeFirstResponder(true);

Il VisualElement.On<iOS> metodo specifica che questa piattaforma verrà eseguita solo in iOS. Il VisualElement.SetCanBecomeFirstResponder metodo, nello spazio dei Xamarin.Forms.PlatformConfiguration.iOSSpecific nomi , viene usato per impostare per VisualElement diventare il primo risponditore per gli eventi di tocco. Inoltre, il VisualElement.CanBecomeFirstResponder metodo può essere usato per restituire se VisualElement è il primo risponditore agli eventi di tocco.

Il risultato è che un VisualElement può diventare il primo risponditore per gli eventi di tocco, anziché la pagina contenente l'elemento. Ciò consente scenari come le applicazioni di chat che non ignorano una tastiera quando viene toccato un Button oggetto .