上傳一段通過UISlider控件來控制動畫速度的代碼
@implementation RootViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[superviewDidLoad];
//imageName:方法是從bundle(包)中找照片
UIImageView *imageView1=[[UIImageViewalloc]initWithImage:[UIImageimageNamed:@"453_36388_882073.jpg"]];
imageView1.center=CGPointMake(160,320);
[self.viewaddSubview:imageView1];
imageView=[[UIImageViewalloc]initWithFrame:CGRectMake(15,40,289, 220)];
[self.viewaddSubview:imageView];
NSMutableArray*images=[[NSMutableArrayalloc]initWithCapacity:7];
for (int i=0; i<7; i++) { //一共設定了7張圖檔
NSString *imageName=[NSStringstringWithFormat:@"u=4207553503,3962206909&fm=21&gp=0.jpg-%d(被拖移).tiff",i+1];//圖檔名稱這裡可以改成你想要的一切圖檔,但是請注意這些圖檔的關聯性.這裡注意%d的指代.
UIImage* image=[UIImageimageNamed:imageName];
[imagesaddObject:image];
}
imageView.animationImages=images;//将imageView設定為全局變量;
//給imageView指定一組用于做動畫的圖檔
imageView.animationDuration=0.1;//動畫的總時長(一組動畫顯示下來的總時間)
imageView.animationRepeatCount=3;//顯示圖檔循環次數.
[self.viewaddSubview:imageView];
[imageViewstartAnimating];
UISlider*slider=[[UISlideralloc]initWithFrame:CGRectMake(20,240,280, 30)];
slider.maximumValue=5;
slider.minimumValue=0.1;
[slider addTarget:selfaction:@selector(changeSpeed:)forControlEvents:UIControlEventAllEvents];
NSLog(@"++++++++++++++++++%f",imageView.animationDuration);
[self.viewaddSubview:slider];
// Do any additional setup after loading the view.
}
-(void)changeSpeed:(UISlider*)slider{
imageView.animationDuration=slider.value;
[imageViewstartAnimating];
NSLog(@"---------------%f",imageView.animationDuration);//列印輸出下時長的值,便于觀察變化
}