Shy*_*man 4 animation frame uiimageview ios
我有一个关于如何使用逐帧方法添加动画UIImageView的想法但我的问题是关于如何动画UIImageView ALREADY在视图控制器故事板上添加为IBOutlet UIImageView.
在这个代码的和平中会有什么变化?
NSArray *myImages = [NSArray arrayWithObjects:
[UIImage imageNamed:@"bookmark1.png"],
[UIImage imageNamed:@"bookmark2.png"],
[UIImage imageNamed:@"bookmark3.png"],
[UIImage imageNamed:@"bookmark4.png"],
[UIImage imageNamed:@"bookmark5.png"],nil];
myAnimatedView = [UIImageView alloc];
[myAnimatedView initWithFrame:CGRectMake(0, 0, 131, 125)];
myAnimatedView.animationImages = myImages;
myAnimatedView.animationDuration = 0.25;
myAnimatedView.animationRepeatCount = 1;
[myAnimatedView startAnimating];
[self.navigationController.view addSubview:myAnimatedView];
Run Code Online (Sandbox Code Playgroud)
我希望通过viewController为这个图像添加动画效果
它更容易.首先,添加.h文件:
@property (nonatomic, retain) IBOutlet UIImageView *iV;
Run Code Online (Sandbox Code Playgroud)
之后,将此插座连接到故事板上的实际UIImageView.更改您的代码:
iV.animationImages = myImages;
iV.animationDuration = 0.25;
iV.animationRepeatCount = 1;
[iV startAnimating];
Run Code Online (Sandbox Code Playgroud)
就这样.希望这有帮助
ps是的,别忘了iV = nil; in - (void)viewDidUnload方法
UPD:补充道
[self performSelector:@selector(animationDone) withObject:nil afterDelay:0.25];
Run Code Online (Sandbox Code Playgroud)
在startAnimating调用之后,显然添加了animationDone方法:
- (void)animationDone {
[iV stopAnimating];
[iV setImage:[UIImage imageNamed:@"bookmark5.png"]];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5379 次 |
| 最近记录: |