Sdílet prostřednictvím


První respondér VisualElement v iOSu

Tato platforma pro iOS umožňuje VisualElement , aby se objekt stal prvním reagátorem na dotykové události, a ne na stránku obsahující prvek. Využívá se v XAML nastavením vlastnosti bindable na VisualElement.CanBecomeFirstResponder 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>

Alternativně ho můžete využívat z jazyka C# pomocí rozhraní FLUENT API:

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);

Metoda VisualElement.On<iOS> určuje, že se tato platforma bude spouštět pouze v iOSu. Metoda VisualElement.SetCanBecomeFirstResponder v Xamarin.Forms.PlatformConfiguration.iOSSpecific oboru názvů slouží k nastavení VisualElement , aby se stal prvním respondentem pro dotykové události. Kromě toho lze metodu VisualElement.CanBecomeFirstResponder použít k vrácení toho, zda VisualElement je první reakce na dotykové události.

Výsledkem je, že VisualElement se může stát prvním reagátorem na dotykové události místo stránky obsahující prvek. To umožňuje scénáře, jako jsou chatovací aplikace, které při klepnutí nezavřely klávesnici Button .