无法从其他资产目录加载图像
Can't load image from other asset catalog
我有一个 Xamarin Forms 应用程序,它有 2 个资产目录。其中之一是库的一部分,称为 SharedAssets,另一个是应用程序 iOS 项目的一部分,称为资产。
“资产”目录是两个目录中最新的一个,出于某种原因,我似乎无法使用
访问它们中的任何一个
UIImage.FromBundle("ic_marker");
用于 ic_marker 图像集,而当我使用 SharedAssets 目录中的图像之一时,它完全可以正常工作。我查看了是否可以使用 FromBundle 的其他重载之一,但我似乎无法让它与我使用的任何捆绑包一起使用。我还看到了 FromFile 和 FromResource 方法,但我不知道这两种方法是否适合使用,如果适合我将如何使用它们。
因为我之前在另一个应用程序中使用过相同的图像,我怀疑图像本身有问题,但我认为由于某种原因,资产目录没有正确加载。
有人知道我做错了什么或者可能有替代解决方案。
我的解决方案是:
UIImage.FromBundle("ic_marker", NSBundle.MainBundle, UITraitCollection.CurrentTraitCollection);
显然我在尝试 FromBundle 的其他重载时犯了一个错误。我为 traitCollection 参数传递了 null,我认为这很好,因为我不想放弃任何不同的特征,并且由于该参数可以为空,我认为它只会用于某种默认实现,但事实并非如此.
我有一个 Xamarin Forms 应用程序,它有 2 个资产目录。其中之一是库的一部分,称为 SharedAssets,另一个是应用程序 iOS 项目的一部分,称为资产。 “资产”目录是两个目录中最新的一个,出于某种原因,我似乎无法使用
访问它们中的任何一个UIImage.FromBundle("ic_marker");
用于 ic_marker 图像集,而当我使用 SharedAssets 目录中的图像之一时,它完全可以正常工作。我查看了是否可以使用 FromBundle 的其他重载之一,但我似乎无法让它与我使用的任何捆绑包一起使用。我还看到了 FromFile 和 FromResource 方法,但我不知道这两种方法是否适合使用,如果适合我将如何使用它们。
因为我之前在另一个应用程序中使用过相同的图像,我怀疑图像本身有问题,但我认为由于某种原因,资产目录没有正确加载。
有人知道我做错了什么或者可能有替代解决方案。
我的解决方案是:
UIImage.FromBundle("ic_marker", NSBundle.MainBundle, UITraitCollection.CurrentTraitCollection);
显然我在尝试 FromBundle 的其他重载时犯了一个错误。我为 traitCollection 参数传递了 null,我认为这很好,因为我不想放弃任何不同的特征,并且由于该参数可以为空,我认为它只会用于某种默认实现,但事实并非如此.