UIViewAnimation вызывает неявное преобразование из типа перечисления - PullRequest
2 голосов
/ 23 февраля 2012

Я получаю это предупреждение

Неявное преобразование из типа перечисления 'UIViewAnimationCurve' в другой тип перечисления 'UIViewAnimationTransition'

с последней строки в этом коде

if (((UIView*)[[slideViews subviews] objectAtIndex:0]).frame.origin.x > SLIDE_VIEWS_MINUS_X_POSITION) {
    UIView* tempRight2View =[[slideViews subviews] objectAtIndex:[[slideViews subviews] count]-1];
    [UIView beginAnimations:@"ALIGN_TO_MINIMENU" context:NULL];
    [UIView setAnimationTransition:UIViewAnimationCurveEaseInOut forView:viewAtLeft cache:YES]; 

Я адаптирую код из StackScrollView, кто-нибудь знает, как "явно" конвертировать?

1010 * ТИА *

Ответы [ 2 ]

1 голос
/ 23 февраля 2012

вы используете другой набор перечислений: там вы должны поместить один из UIViewAnimationTransition

typedef enum {
UIViewAnimationTransitionNone,
UIViewAnimationTransitionFlipFromLeft,
UIViewAnimationTransitionFlipFromRight,
UIViewAnimationTransitionCurlUp,
UIViewAnimationTransitionCurlDown} UIViewAnimationTransition;

, а вы используете один из UIViewAnimationCurve:

typedef enum {
UIViewAnimationCurveEaseInOut,
UIViewAnimationCurveEaseIn,
UIViewAnimationCurveEaseOut,
UIViewAnimationCurveLinear} UIViewAnimationCurve

они все ещецелое число, но из разных групп констант

0 голосов
/ 23 февраля 2012

Все перечисления являются целыми числами.

Метод вашего вызова принимает UIViewAnimationTransition.

+ (void)setAnimationTransition:(UIViewAnimationTransition)transition 
                       forView:(UIView *)view 
                         cache:(BOOL)cache;

вы устанавливаете его на одно из значений, определенных UIViewAnimationCurve.

...