从Android项目的Forms项目中的EmbeddedResource获取图片

时间:2018-11-09 07:07:19

标签: c# xaml xamarin xamarin.forms xamarin.android

如何从Android项目内部的Forms项目中的EmbeddedResource中获取图片以用于自定义渲染器?

在iOS中,我已经实现了这一点。

var imageView = new UIImageView(UIImage.FromResource(Base1902iOS.PictureAssembly, Base1902iOS.MainAssemblyName + ".Resources." + control.Icon));

FromResource方法已经按名称从指定的程序集中获取资源。我将如何在Android中做到这一点? (最好还将其转换为Android位图。)

这是用于在Xamarin.Forms中的“条目”视图中添加图标。

1 个答案:

答案 0 :(得分:0)

我知道了。

C#

async void Testing(ImageSource icon)
{
    var renderer = new StreamImagesourceHandler();
    Bitmap photo = await renderer.LoadImageAsync(icon, Context);

    var iconfor = new BitmapDrawable(Resources, Bitmap.CreateScaledBitmap(photo, 20, 20, true));
    Control.SetCompoundDrawablesWithIntrinsicBounds(null, null, iconfor, null);
}

XAML:

<customControl:Entry Text="Lawrence" 
               HeightRequest="44" 
               Icon="{res:ImageResourceCustomControls.Forms.Test.Resources.test.png}"/>