从枚举类型 'enum UIViewAnimationOption 到不同枚举类型 uiviewanimation 的隐式转换
Posted
技术标签:
【中文标题】从枚举类型 \'enum UIViewAnimationOption 到不同枚举类型 uiviewanimation 的隐式转换【英文标题】:implicit conversion from enumeration type 'enum UIViewAnimationOption to different enumeration type uiviewanimation transition从枚举类型 'enum UIViewAnimationOption 到不同枚举类型 uiviewanimation 的隐式转换 【发布时间】:2013-03-19 07:50:15 【问题描述】:这是我为图像提供交叉溶解效果的代码
- (void)viewDidLoad
[super viewDidLoad];
typedef enum
UIViewAnimationOptionTransitionCrossDissolve,
UIViewAnimationOptionTransitionCurlDown,
UIViewAnimationOptionTransitionCurlUp,
UIViewAnimationOptionTransitionFlipFromBottom,
UIViewAnimationOptionTransitionFlipFromLeft
UIViewAnimationOptions;
[UIView animateWithDuration:1.0 animations:^(void)
[UIView setAnimationTransition: UIViewAnimationOptionTransitionCrossDissolve forView:img cache: YES];
completion:^(BOOL finished)
[UIView animateWithDuration:1.0 animations:^(void)
[UIView setAnimationTransition: UIViewAnimationOptionTransitionCrossDissolve forView:img cache: YES];
completion:^(BOOL finished)
];
];
但我收到警告从枚举类型“enum UIViewAnimationOption 到不同枚举类型 uiviewanimation 转换的隐式转换。
但如果我给出 UIViewAnimationTransitionFlipFromRight,UIViewAnimationTransitionCurlUp ..... 它正在工作,但 animatewithoptions 会发出警告。
谁能帮帮我?
【问题讨论】:
实际上我需要反向交叉溶解效果。有人也可以帮助我吗? 你为什么要定义 UIViewAnimationOptions 枚举? 删除 typedef 将解决您的问题。 @wattson12 我添加 typedef 以删除该警告 警告的出现是有原因的,它告诉你有问题 【参考方案1】:您正在使用UIViewAnimationOption
的枚举。
为UIViewAnimationTransition
定义的枚举是:
typedef enum
UIViewAnimationTransitionNone,
UIViewAnimationTransitionFlipFromLeft,
UIViewAnimationTransitionFlipFromRight,
UIViewAnimationTransitionCurlUp,
UIViewAnimationTransitionCurlDown,
UIViewAnimationTransition;
请查看UIView Class 以供参考。
也删除你定义的枚举,不需要它。 ios 已经有 UIView
类的枚举。
【讨论】:
【参考方案2】:你不需要 typedef 动画选项枚举,它已经完成了
错误告诉你出了什么问题,当方法需要 UIViewAnimationTransition
时,你传入了一个类型 UIViewAnimationOption
动画过渡的有效选项是:
typedef enum
UIViewAnimationTransitionNone,
UIViewAnimationTransitionFlipFromLeft,
UIViewAnimationTransitionFlipFromRight,
UIViewAnimationTransitionCurlUp,
UIViewAnimationTransitionCurlDown,
UIViewAnimationTransition;
【讨论】:
但是这个分类没有溶解效果。如何获得溶解效果 溶解效果是一个动画选项,因此您需要使用该设置作为选项来制作动画。它不是您可以访问的默认转换之一。您应该使用 transitionToView: 方法,请参见此处:***.com/a/9546262/1138900以上是关于从枚举类型 'enum UIViewAnimationOption 到不同枚举类型 uiviewanimation 的隐式转换的主要内容,如果未能解决你的问题,请参考以下文章