2010-01-21 73 views
1

我使用UITableViewController来显示项目列表,其中一个项目选择必须导致使用animationImages创建的 照片库。我通常申报相关联 第一级选择控制器的东西,如:从表格视图加载动画图像控制器

MyController *myController = [[MyController alloc] initWithStyle:UITableViewStylePlain];

myController.title = @"title 1";

myController.rowImage = [UIImage imageNamed:@"myControllerIcon.png"];

..

但我相信使用animationImages一个UIViewController需要.. 我怎么能直接从表视图来显示图像动画?

回答

0

如果您有图像序列构建以这种方式:

NSArray *myImages = [NSArray arrayWithObjects: 
[UIImage imageNamed:@"myImage1.png"], 
[UIImage imageNamed:@"myImage2.png"], 
[UIImage imageNamed:@"myImage3.png"], 
[UIImage imageNamed:@"myImage4.gif"], 
nil]; 

UIImageView *myAnimatedView = [UIImageView alloc]; 
[myAnimatedView initWithFrame:[self bounds]]; 
myAnimatedView.animationImages = myImages; 
myAnimatedView.animationDuration = 0.25; // seconds 
myAnimatedView.animationRepeatCount = 0; // 0 = loops forever 
[myAnimatedView startAnimating]; 
[self addSubview:myAnimatedView]; 
[myAnimatedView release]; 

Snatched from here

然后你就可以建立自己的细胞或animationImage添加到细胞将其添加到之一:

[cell setImage:myAnimatedView]; 
[cell setBackgroundView:myAnimatedView]; 
[cell setSelectedBackgroundView:myAnimatedView] 
+0

嗨, 当我尝试像这个例子一样创建图像时,我得到一个警告“myController可能不会响应'-addSubview',并且当我选择对应myController的导航列表项。 我想我应该使用UIViewController而不是UITableViewController吧? 但是,如果我这样做,我不能在我的导航列表中使用它来显示相应的项目(因为它还没有被创建为UITableViewStylePlain我不能使用myController.rowImage = [..])。 – user251356 2010-01-21 10:41:25

+0

嗨ackoverflow。 viewController是一个“视图”和“控制器”中的一个。一些可以帮助你的东西是阅读苹果对iPhone应用程序骨干“模型 - 视图 - 控制器”模式所说的话。无论如何,控制器有一个视图。所以,而不是UIViewController addSubView,你需要UIViewController.view addSubView。 – RickiG 2010-01-22 10:36:56

相关问题