Sdílet prostřednictvím


Rychlé posouvání ListView v Androidu

Tato platforma pro Android se používá k povolení rychlého posouvání dat v ListViewsystému . Využívá se v XAML nastavením ListView.IsFastScrollEnabled připojené vlastnosti na boolean hodnotu:

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

Alternativně ho můžete využívat z jazyka C# pomocí rozhraní 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);

Metoda ListView.On<Android> určuje, že tato konkrétní platforma se bude spouštět pouze v Androidu. Metoda ListView.SetIsFastScrollEnabled v Xamarin.Forms.PlatformConfiguration.AndroidSpecific oboru názvů slouží k povolení rychlého posouvání dat v souboru ListView. Kromě toho lze metodu SetIsFastScrollEnabled použít k přepnutí rychlého posouvání voláním IsFastScrollEnabled metody, která vrátí, zda je povoleno rychlé posouvání:

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

Výsledkem je, že je možné povolit rychlé posouvání dat, ListView což změní velikost posuvníku:

ListView FastScroll – specifická pro platformu