其他分享
首页 > 其他分享> > MvvmCross从字节绑定Android绑定图像[]

MvvmCross从字节绑定Android绑定图像[]

作者:互联网

有谁知道如何在axml视图中将byte [](图像)绑定到Image控件.
我的ViewModel继承自MvxViewModel.
我所有其他绑定的效果都很好,但是我找不到绑定该图像的方法.

解决方法:

我认为您可以使用自定义UI控件将此绑定.

为此,您需要执行以下操作:

>从ImageView继承新的MyImageView
>添加默认构造函数(将上下文和属性向下传递给基本构造函数)
>向MyImageView添加新的RawImage属性,将其实现为:

private byte[] _rawImage;
public byte[] RawImage
{
     get { return _rawImage; }
     set 
     {
             _rawImage = value;
             if (_rawImage == null)
                     return;

             var bitmap = BitmapFactory.DecodeByteArray(_rawImage, 0,_rawImage.Length);
             SetImageBitmap(bitmap);
     }
}

然后,您可以在axml中使用该MyImageView控件,而不是普通的ImageView.

注意-上面的代码未经测试-但是一旦您在视图中获得byte [],我确定您将确定要使用的Droid代码.

作为替代方法,您还可以使用自定义绑定将byte []绑定到普通ImageView-请参见In MvvmCross how do I do custom bind properties中的自定义绑定示例

标签:android,xamarin-android,mvvmcross
来源: https://codeday.me/bug/20191012/1898532.html