dan*_*ord 5 xamarin xamarin.forms
我试图在共享项目资源,以显示和嵌入式图像(如解释在这里微软的文档)。
我创建了 ImageResourceExtension,项目编译,但是当我启动项目时出现以下错误:
无法从程序集“Xamarin.Forms.Core,版本 = 2.0.0.0”加载类型“Xamarin.Forms.Xaml.IReferenceProvider”
这是我的代码:
主页.xaml
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:App1"
x:Class="App1.MainPage">
<StackLayout>
<Image x:Name="imgTest" Source="{local:ImageResource img.jpg}" />
</StackLayout>
</ContentPage>
Run Code Online (Sandbox Code Playgroud)
嵌入式图像文件
namespace App1
{
[ContentProperty(nameof(Source))]
public class ImageResourceExtension : IMarkupExtension
{
public string Source { get; set; }
public object ProvideValue(IServiceProvider serviceProvider)
{
if (Source == null)
return null;
// Do your translation lookup here, using whatever method you require
var imageSource = ImageSource.FromResource(Source, typeof(ImageResourceExtension).GetTypeInfo().Assembly);
return imageSource;
}
}
}
Run Code Online (Sandbox Code Playgroud)
你可以试试这个,它对我有用
xyz.xaml.cs
imgName.Source = ImageSource.FromResource("ProjectName.Images.backicon.png");
Run Code Online (Sandbox Code Playgroud)
xyz.xaml
<Image x:Name="imgName" />
Run Code Online (Sandbox Code Playgroud)
希望这段代码对你有帮助!!
Bru*_*iro -1
如果将图像添加到 Android 可绘制文件夹或 iOS 资源文件夹中,则不需要任何扩展名。您可以简单地执行以下操作:
<Image x:Name="imgTest" Source="img.jpg" />
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5724 次 |
最近记录: |