我有一些代码,其中我已声明在UIImageview中显示14个图像,并将它们命名为1,2,3,.... 14.jpg。这些图像位于从桌面复制的文件夹中,并放置在项目中。
现在我有一个服务器和客户端代码,从中运行名为1,2,....的图像将被刷新,新图像将会出现。但是当我尝试执行我的代码时,可以看到第一次出现的图像,并且对于每次重复,模拟器中显示的图像都没有变化....
NSArray *array1=[NSArray arrayWithObjects:[UIImage imageNamed:@"1.jpg"],[UIImage imageNamed:@"2.jpg"],[UIImage imageNamed:@"3.jpg"],[UIImage imageNamed:@"4.jpg"],[UIImage imageNamed:@"5.jpg"],[UIImage imageNamed:@"6.jpg"],[UIImage imageNamed:@"7.jpg"],[UIImage imageNamed:@"8.jpg"],[UIImage imageNamed:@"9.jpg"],[UIImage imageNamed:@"10.jpg"],[UIImage imageNamed:@"11.jpg"],[UIImage imageNamed:@"12.jpg"],[UIImage imageNamed:@"13.jpg"],[UIImage imageNamed:@"14.jpg"],nil];
[UIImageView beginAnimations:Nil context:NULL];
image1.animationImages=array1;
image1.contentMode=UIViewContentModeScaleAspectFill;
image1.animationDuration=10;
image1.animationRepeatCount=10;
[image1 startAnimating];
当这段代码运行时,我得到了第一次显示的14张图像。即使在该文件夹中更改了图像,它也不会被更改。
答案 0 :(得分:2)
imageNamed:
的文档说它在应用程序的主要包中查找。由于您无法在设备上写入应用程序包,因此如果以这种方式加载,则无法替换随应用程序分发的内容。
您可能需要切换到imageWithContentsOfFile:
并在首次运行应用时将分布式图像移动到可写位置,以便您可以更新它们。
(您没有说明存储从服务器获取的图像的位置。)