RefreshViewはリストだけじゃなくてなんにでも使える
タイトルのとおり,RefreshView
で囲んだコントロールはPull-To-Refresh(下に引っ張って更新)
できるようになる.
Image
は試した.
画像を下に引っ張ると別の画像に変わる,といったことができる.
<RefreshView Command="{Binding AvatarRefreshCommand}" IsRefreshing="{Binding IsAvatarRefreshing}"> <Image x:Name="AvatarImage" HorizontalOptions="Center" Source="{Binding AvatarUri}" VerticalOptions="Center" WidthRequest="150" /> </RefreshView>
private async Task ExecuteAvatarRefreshCommand(object obj) { var newAvatarUri = DataFactory.GetPeople(30).Random().Take(1).First().AvatarUrl; //ちゃんとぐるぐるが小さくなって自然に消えるようにするためには, //ここでDelayを挟むと良い.なぜかはわからない. await Task.Delay(1000);//0じゃなければ良いが,自然に見せるために1秒とっている. IsAvatarRefreshing = false; AvatarUri = newAvatarUri; } # ソースコード [https://github.com/shuheydev/JXUG20191209Sample/blob/master/XamarinFormsUiPractice/XamarinFormsUiPractice/XamarinFormsUiPractice/Views/RefreshViewPage.xaml:embed:cite]