Desplazamiento rápido de ListView en AndroidListView Fast Scrolling on Android

Descargar ejemplo Descargar el ejemploDownload Sample Download the sample

Esta plataforma Android específica se usa para habilitar el desplazamiento rápido a través de los datos de un ListView .This Android platform-specific is used to enable fast scrolling through data in a ListView. Se consume en XAML estableciendo la ListView.IsFastScrollEnabled propiedad adjunta en un boolean valor:It's consumed in XAML by setting the ListView.IsFastScrollEnabled attached property to a boolean value:

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

Como alternativa, se puede usar desde C# con la API fluida:Alternatively, it can be consumed from C# using the fluent 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);

El ListView.On<Android> método especifica que este específico de la plataforma solo se ejecutará en Android.The ListView.On<Android> method specifies that this platform-specific will only run on Android. El ListView.SetIsFastScrollEnabled método, en el Xamarin.Forms.PlatformConfiguration.AndroidSpecific espacio de nombres, se utiliza para habilitar el desplazamiento rápido a través de los datos de un ListView .The ListView.SetIsFastScrollEnabled method, in the Xamarin.Forms.PlatformConfiguration.AndroidSpecific namespace, is used to enable fast scrolling through data in a ListView. Además, el SetIsFastScrollEnabled método se puede utilizar para alternar el desplazamiento rápido llamando al IsFastScrollEnabled método para devolver si está habilitado el desplazamiento rápido:In addition, the SetIsFastScrollEnabled method can be used to toggle fast scrolling by calling the IsFastScrollEnabled method to return whether fast scrolling is enabled:

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

El resultado es que se puede habilitar el desplazamiento rápido a través de los datos de un ListView , lo que cambia el tamaño del control de desplazamiento:The result is that fast scrolling through data in a ListView can be enabled, which changes the size of the scroll thumb:

Específico de la plataforma ListView FastScrollListView FastScroll Platform-Specific