0

我的目标是显示一个subView动画,我已经实现了一个专门的类来执行这样的动画,并且我已经从该类实例化并将其应用于我的子视图动画:

AnimationClass *ani = [[AnimationClass alloc] init];    
ani.type = AnimationClassTypeTransition;
ani.direction = AnimationClassDirectionMoveUp;

[self.masterView addSubview:self.detailImage withAnimation:ani];

平滑过渡动画一切正常,但是,我收到以下警告:

'UIView' may not respond to 'addSubview:withAnimation:'

请问我该如何重构上面的代码来解决这个警告?提前感谢

编辑 masterView 是UIView类型的属性。它是这样声明的:

@property (nonatomic, assign) UIView *masterView;

并在.m.

4

2 回答 2

1

如果您的代码在没有崩溃的情况下运行,那么您只是忘记了声明您addSubview:withAnimation:的子类的方法UIView。我想self.masterView是子类的类型UIView,它有一个方法addSubview:withAnimation:,但您没有在.h子类的文件中声明此方法UIView

于 2012-06-18T09:38:35.893 回答
1
#import <QuartzCore/QuartzCore.h>

CATransition *transition = [CATransition animation];
transition.duration = 1.0;
transition.type = kCATransitionPush; //choose your animation
[newView.layer addAnimation:transition forKey:nil];
[self.view addSubview:newView]; 
于 2012-06-18T09:39:43.610 回答