我看到了不同的应用程序,每次在视图背景上打开应用程序时,图像都会发生变化。这是如何完成的?适用于iOS应用程序背景的多个图像
回答
加background_0.png,background_1.png,background_2.png,background_3。 PNG等你的项目。
#define max_image_number 3
以下添加到您的viewDidLoad方法:
-(void)viewDidLoad {
[super viewDidLoad];
[self updatedBackgroundImage];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(updateBackgroundImage) name:UIApplicationWillEnterForegroundNotification object:nil];
}
-(void) updateBackgroundImage{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if (![defaults integerForKey:@"imageNumber"]) {
[defaults setInteger:0 forKey:@"imageNumber"];
}
int i = [defaults integerForKey:@"imageNumber"];
myUIimageView.image = [UIImage imageNamed:[NSString stringWithFormat:@"background_%d.png",i]];
i++;
if (i > max_image_number) {
[defaults setInteger:0 forKey:@"imageNumber"];
}else{
[defaults setInteger:i forKey:@"imageNumber"];
}
...
}
以上将更新图像第一次加载的viewController时,也当它在后台运行,则返回。我认为这就是你想念的东西:)。
请记住停止侦听viewDidUnload方法中的通知,并且应该设置。
为什么这样做得到了降低。回答这个问题的详细情况 – AppHandwerker 2012-07-31 21:24:43
不知道......不是我投票的结果......可能是Jim或Teodor,因为他们仍然不明白这个问题。 – user717452 2012-07-31 22:00:33
是你要找的答案吗?请接受,如果它是。如果它不是那么也可以说的路,我会尝试修复它。 – AppHandwerker 2012-08-01 07:26:39
查看您提到的应用程序的App Store中的屏幕截图,看起来好像主菜单的视图层次结构后面只有一个UIImageView
。您可以通过将UIImage
对象分配给其image
属性来更改此对象。
是的,我知道如何设置背景图片。但是,他们的背景图像会定期变化。 – user717452 2012-07-31 19:01:33
我真的不知道你在问什么。如果你知道如何改变图像,那么什么阻止你改变它? – Jim 2012-07-31 19:08:37
@TeodorCarstea您的评论将被标记为无用。在应用程序中,下载它之后,它将显示一个图像作为标签栏控制器的背景。稍后,您可能会再次启动应用程序,现在背景不同。这就是我想要做的,不只是改变它一次,并重新提交二进制文件 – user717452 2012-07-31 20:03:03
假设您想要更改一个或多个视图的背景图像,具体取决于应用程序启动。
将int x = 0
保存到NSUserDefaults中。在每个应用程序的启动1。增加它当你提出一个观点,检查int和设置这样一个背景图片:
switch(x%3){// %3 just to make it a bit random
case 0://set this image;
break;
case 1://set that image
break;
//and so on
}
这听起来像你所看到的是iOS系统在将它放入背景之前对你的应用程序进行的缓存截图。
这是自动处理的,你有机会截获这个。
看看这个答案,你可以在你的应用程序上放置一个图像,就像它进入后台一样,这将被缓存并用于重新启动应用程序。
- 1. iOS应用背景图像
- 2. 设置一个随机应用程序背景图像iOS 6
- 3. Android应用程序的背景图像
- 4. 反应背景图像样式不适用于本地图像
- 5. NavigationBar适用于iOS 10的背景图像XCode 8.1 Swift 3.0
- 6. Windows Phone应用程序背景图像
- 7. 用于Java2D应用程序的复杂背景图像
- 8. 适用于iOS和Android应用程序的图像分辨率
- 9. setBackground不适用于小程序背景
- 10. 适用于多视图iOS应用程序的约定
- 11. Android - 适用于应用程序背景的JPG或PNG
- 12. IOS:应用程序音乐背景
- 13. 使用CSS3的多个背景图像
- 14. 适合背景图像到第二个背景图像
- 15. 在iOS中使用导航栏的背景图像时应用程序崩溃
- 16. 背景位置仅适用于像素?
- 17. 的iOS使用图像背景按钮
- 18. 背景iOS应用
- 19. 在背景上使用多个图像
- 20. 如何显示iPhone应用程序的背景图像或前景图像
- 21. 更改和谐绘图应用程序的背景图像
- 22. 将色调滤镜仅应用于画布元素的背景图像,但不应用于其文本/仅适用于文本而不适用于背景
- 23. 为什么多个背景图片不适用于IE?
- 24. 背景图像上的iOS
- 25. UITabbar的背景图像ios
- 26. iOS应用程序视图背景(图像vs绘制)设计问题
- 27. 多个背景图像IE8
- 28. 如何使用多个背景图像指定单个全局背景图像?
- 29. css背景图像适应尺寸
- 30. 调整图像以适应背景
你的意思是“应用程序在视图背景上打开”是什么意思?安装应用程序后无法更改启动图像。你的意思是别的吗?你能举一个你想要的应用程序的例子吗? – Jim 2012-07-31 18:43:55
每次打开应用程序时,视图背景的图像都会更改。 FHU Mobile就是这样做的。 – user717452 2012-07-31 18:54:40