Xamarin - 当我更换图像源时闪烁

Dim*_*ich 6 c# android xamarin xamarin.forms

我正在使用xamarin表单并尝试创建导航菜单.我点击单元格时需要设置新图像.当我替换图像时,我有些眨眼.

我创建图像:

var image = new Image { Source = "Image.png"; }
Run Code Online (Sandbox Code Playgroud)

我把它添加到我的网格上

    var profileTapRecognizer = new TapGestureRecognizer();
                profileTapRecognizer.Tapped += (sender, e) =>
                {
                    ItemClicked(sender as ITaggedCell);
                };

        image.GestureRecognizers.Add(profileTapRecognizer);

    grid.Children.Add(image, i, 0);
Run Code Online (Sandbox Code Playgroud)

在ItemClicked中我改变了源并在设置新图像之前闪烁:

image.Source = "NewImage.png" 
Run Code Online (Sandbox Code Playgroud)

我试过了

image.BatchBegin() 
image.Source = "NewImage.png" 
image.BatchCommit() 
Run Code Online (Sandbox Code Playgroud)

以这种方式如何在单击xamarin.forms中的ListView时更改图像源?

改变形象的最佳方法是什么?

Dus*_*gal 11

不是直接的解决方案,但如果你要改变图像,为什么不动画?那甚至看起来不错!

首先淡出,然后更换,然后淡入!

await image.FadeTo(0, 250);
image.Source = "NewImage.png";
await image.FadeTo(1, 250);
Run Code Online (Sandbox Code Playgroud)