我在Xamarin表单中遇到了平台效果的问题。这些效果在一个共享库格式中工作,我们现在正在迁移到.NET标准2.0,原因超出了本文的范围。
项目设置
安卓标准VS 2017 15.8.0 3.1.0.697729
.Net标准2.0项目(一个用于组件,另一个用于主UI)
<代码>F213
Main Issue my of my platform effects in Android .dll work.它们都解析为无效效果。
根据文档,我的设置是正确的。(文档here)
我发现了两个不同的问题,并且碰壁了。
当我严格按照说明将:
我一直在搜索和挖掘论坛,但都无济于事。有没有人知道问题出在哪里?
附注:所有自定义渲染器在使用静态Init()技巧后都可以工作,但不能使用效果。我还尝试让typeof()语句同时引用类的Android版本和类的.NET Standard 2.0版本。
为了完整起见,下面是我要介绍的内容。
网络标准2.0:
namespace MyBaseNamespace.Components.Effects
{
public class SearchBarStylingEffect : RoutingEffect
{
public SearchBarStylingEffect() : base("MyGroupName.SearchBarStylingEffect")
{
}
}
}
安卓:
[assembly: ResolutionGroupName("MyGroupName")]
[assembly: ExportEffect(typeof(SearchBarStylingEffect), "SearchBarStylingEffect")]
namespace MyBaseNamespace.Components.Android.Renderers.Effects
{
public class SearchBarStylingEffect : PlatformEffect
{
…
}
}
(iOS和Android一样,只是命名空间不同)
发布于 2018-08-23 03:54:16
我也在Xamarin的论坛上发布了这篇文章,来自Xamarin的比利·刘问了一个问题,最终引导我走上了正确的道路。我将在这里链接到它,并发布修复它的内容。
下面是这篇文章的解决方案:
简而言之,我必须做以下事情才能实现这个功能(现在是这样):
https://stackoverflow.com/questions/51900561
复制相似问题