在本地iPhone应用程序中重复背景图像
在我的笔尖文件中将UIWebView作为最后一层的缺点,我如何将一个重复的背景图像添加到iPhone应用程序(例如在分组的UITableView背景中的灯芯绒外观)?
我是否需要创build一个与iPhone屏幕大小相同的图像,然后使用复制和粘贴手动重复该图像?
显然一个UIColor不一定是单一的颜色,但也可以是一个模式。 令人困惑的是,这在Interface Builder中不受支持。
而是使用便捷方法+ colorWithPatternImage设置视图的backgroundColor(例如,在-viewDidLoad中),并将其传递给UI图像。 例如:
- (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"gingham.png"]]; }
当然,不要忘记将图像文件添加到您的应用程序包。
还有一些内置的背景图案“颜色”:
- groupTableViewBackgroundColor
- viewFlipsideBackgroundColor
由于在所有的iPhone应用程序中都使用了全局的操作系统,所以操作系统更新的双刃剑更新了应用程序的外观和风格(赋予它一个全新的外观,可能会也可能不适用)。
例如:
- (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor = [UIColor groupTableViewBackgroundColor]; }
你应该看看来自Apple的QuartzDemo iPhone示例代码,特别是QuartzImageDrawing.m。 应该使用下面的方法调用。
CGContextDrawTiledImage
你甚至可以有一个移动的animation平铺背景图像。 :d
Apps Amuck有一个简单的教程,告诉你如何在他们的网站上做到这一点。
31天的iPhone应用程序 – 第16天:世界巡回演唱会
你应该使用colorWithPatternImage