【发布时间】:2017-06-29 23:21:10
【问题描述】:
stackoverflow 上有几篇文章涵盖了这一点,但没有一个是原因。我已经尝试了几个来源,包括文档,但我无法让它工作。 我正在关注 mosh 在 Udemy 上的教程,他正在展示如何使用嵌入式资源文件。 我正在使用 Visual Studio 2017。 我在 HelloWorld 文件夹中添加了一个名为 images 的文件夹,并在其中放置了一个名为 background.jpg 的图片。
当您右键单击图像并将构建操作设置为 EmbeddedReesource 时,您应该获得一个资源 ID。没有,甚至连盒子都没有出现。我认为这是一项已被删除的新功能。
我发现资源路径是HelloWorld.images.background.jpg。
我的 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"
x:Class="HelloWorld.ImagePage"
BackgroundColor="Black">
<ContentPage.Content>
<Image x:Name="image" Aspect="AspectFill" />
</ContentPage.Content>
</ContentPage>
接下来,我的c#代码是这样的:
public ImagePage ()
{
InitializeComponent ();
image.Source = ImageSource.FromResource("HelloWorld.images.background.jpg");
}
并且我已经尝试将图像放在资源/Drawable 下的 android 项目中,但这不会违背目的吗?
任何帮助都会很棒。提前谢谢。
【问题讨论】:
-
您能否显示您的解决方案结构的屏幕截图以确保我们理解它
-
“当您右键单击图像并将构建操作设置为 EmbeddedReesource 时,您应该获得一个资源 ID” - 仅当您将其添加为 Android 项目中的资源并且仅在 Android 项目中,而不是在 PCL 中
-
"没有,连盒子都没有出现。" - 这可能是它不起作用的原因。您需要在 Properties 中将其设置为 EmbeddedResource。
标签: xamarin.forms