Scorrimento rapido di ListView in Android

Download Sample Scaricare l'esempio

Questo specifico della piattaforma Android viene usato per abilitare lo scorrimento rapido dei dati in un oggetto ListView. Viene utilizzato in XAML impostando la ListView.IsFastScrollEnabled proprietà associata su un boolean valore:

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

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

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

Il ListView.On<Android> metodo specifica che questa specifica della piattaforma verrà eseguita solo in Android. Il ListView.SetIsFastScrollEnabled metodo , nello spazio dei Xamarin.Forms.PlatformConfiguration.AndroidSpecific nomi , viene usato per abilitare lo scorrimento rapido dei dati in un oggetto ListView. Inoltre, il SetIsFastScrollEnabled metodo può essere usato per attivare o disattivare lo scorrimento rapido chiamando il IsFastScrollEnabled metodo per restituire se lo scorrimento rapido è abilitato:

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

Il risultato è che è possibile abilitare lo scorrimento rapido dei dati in un oggetto ListView , che modifica le dimensioni del cursore di scorrimento:

ListView FastScroll Platform-Specific