Xamarin ResolutionGroupName和多重效果
我已经创建了一个名为“效果”的文件夹,其中应该包含我的项目的所有效果。它具有以下属性的一种效果:Xamarin ResolutionGroupName和多重效果,xamarin,xamarin.forms,effects,.net-attributes,Xamarin,Xamarin.forms,Effects,.net Attributes,我已经创建了一个名为“效果”的文件夹,其中应该包含我的项目的所有效果。它具有以下属性的一种效果: [assembly: ResolutionGroupName("Effects")] [assembly: ExportEffect(typeof(SomeProject.iOS.Effects.SliderEffect), "SliderEffect")] 现在我想添加另一个效果(作为单独的文件),具有相同的效果,但是我得到了 重复的“ResolutionGroupName”属性 我明白 请注意
[assembly: ResolutionGroupName("Effects")]
[assembly: ExportEffect(typeof(SomeProject.iOS.Effects.SliderEffect), "SliderEffect")]
现在我想添加另一个效果(作为单独的文件),具有相同的效果,但是我得到了
重复的“ResolutionGroupName”属性
我明白
请注意,每个项目只能应用此属性一次
及
属性,该属性标识一个组名,通常是一个公司名或反向的公司URL,该名称为有效名称提供范围
,但如何在单独的文件中使用多个效果?我发现的所有例子都只使用了一种效果
请注意,每个项目只能应用此属性一次
是的,这是正确的,您只能使用它一次,对于其余的效果,您不必声明ResolutionGroupName。系统将根据唯一效果名称解析效果
下面的示例代码应该给出一个清晰的概念
下面的代码将DummyApp设置为groupname,不能针对不同的效果和ImageEffects进行更改,而ImageEffects应该是唯一的才能执行
[assembly: ResolutionGroupName("DummyApp")]
[assembly: ExportEffect(typeof(ImageEffects), "ImageEffects")]
namespace DummyApp.Droid.Effects
{
public class ImageEffects : PlatformEffect
{
现在,对于第二个效果,您可以简单地声明并注册导出效果属性
[assembly: ExportEffect(typeof(FocusEffect), "FocusEffect")]
namespace GrowerApp.Droid.Effects
{
public class FocusEffect : PlatformEffect
{
现在将显示表单声明示例代码
public class ImageEffects : RoutingEffect
{
public ImageEffects() : base("DummyApp.ImageEffects")
{
}
}
public class FocusEffect : RoutingEffect
{
public FocusEffect() : base("DummyApp.FocusEffect")
{
}
}
希望这有帮助 还是一种奇怪的行为。。。Forms Decaration仅用于XAML?