Udostępnij za pośrednictwem


Szybkie przewijanie elementu ListView w systemie Android

Ta platforma systemu Android służy do włączania szybkiego przewijania danych w obiekcie ListView. Jest on używany w języku XAML przez ustawienie dołączonej ListView.IsFastScrollEnabled boolean właściwości na wartość:

<ContentPage ...
             xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout Margin="20">
        ...
        <ListView ItemsSource="{Binding GroupedEmployees}"
                  GroupDisplayBinding="{Binding Key}"
                  IsGroupingEnabled="true"
                  android:ListView.IsFastScrollEnabled="true">
            ...
        </ListView>
    </StackLayout>
</ContentPage>

Alternatywnie można go używać z poziomu języka C# przy użyciu płynnego interfejsu API:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
...

var listView = new Xamarin.Forms.ListView { IsGroupingEnabled = true, ... };
listView.SetBinding(ItemsView<Cell>.ItemsSourceProperty, "GroupedEmployees");
listView.GroupDisplayBinding = new Binding("Key");
listView.On<Android>().SetIsFastScrollEnabled(true);

Metoda ListView.On<Android> określa, że ta platforma będzie działać tylko w systemie Android. Metoda ListView.SetIsFastScrollEnabled w Xamarin.Forms.PlatformConfiguration.AndroidSpecific przestrzeni nazw służy do szybkiego przewijania danych w obiekcie ListView. Ponadto SetIsFastScrollEnabled metoda może służyć do przełączania szybkiego przewijania przez wywołanie IsFastScrollEnabled metody w celu zwrócenia, czy włączono szybkie przewijanie:

listView.On<Android>().SetIsFastScrollEnabled(!listView.On<Android>().IsFastScrollEnabled());

Wynikiem jest to, że szybkie przewijanie danych w obiekcie ListView można włączyć, co zmienia rozmiar kciuka przewijania:

ListView — platforma FastScroll specyficzna dla platformy