Primeiros respondentes do VisualElement no iOS
Esse específico da plataforma iOS permite que um VisualElement
objeto se torne o primeiro respondente a eventos de toque, em vez da página que contém o elemento. Ele é consumido em XAML definindo a VisualElement.CanBecomeFirstResponder
propriedade associável como 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>
Como alternativa, ele pode ser consumido do C# usando a API fluente:
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);
O método VisualElement.On<iOS>
especifica que essa plataforma específica só será executada no iOS. O VisualElement.SetCanBecomeFirstResponder
método, no Xamarin.Forms.PlatformConfiguration.iOSSpecific
namespace, é usado para definir o VisualElement
para se tornar o primeiro respondente para eventos de toque. Além disso, o VisualElement.CanBecomeFirstResponder
método pode ser usado para retornar se o VisualElement
é o primeiro respondente a eventos de toque.
O resultado é que a VisualElement
pode se tornar o primeiro respondente para eventos de toque, em vez da página que contém o elemento. Isso permite cenários como aplicativos de bate-papo que não dispensam um teclado quando a Button
é tocado.