微妙的图案背景iOS png文件
Posted
技术标签:
【中文标题】微妙的图案背景iOS png文件【英文标题】:subtle patterrns background iOS png files 【发布时间】:2013-01-07 05:35:25 【问题描述】:我正在开发一个通用应用程序,我想使用一些在微妙模式.com 上找到的背景,下载它们时我只看到两个 png 文件(常规 png 和 2x png)。如何将它们同时用于 iPhone 和 iPad(包括视网膜显示器)?我是否必须对它们进行缩放以支持所有分辨率?
谢谢。
【问题讨论】:
【参考方案1】:您需要创建一个图案作为视图的背景色。视图的大小无关紧要,如果您在项目中包含这两个文件,将自动选择视网膜版本。例如:
UIImage *bgimg = [UIImage imageNamed:@"gray_jean"];
self.view.backgroundColor = [UIColor colorWithPatternImage:bgimg];
如果您的项目中有 2 个文件:
gray_jean@2X.png
gray_jean.png
它应该适用于任何情况;图像将被平铺以填充任何视图背景,并且视网膜版本自动用于视网膜屏幕。不过要小心,因为在某些模式中,非视网膜版本是 PNG 文件,而@2x 视网膜版本是 JPEG 文件。
【讨论】:
好电话。另一位用户在下面解释的 iPad(包括视网膜)呢? 因为您正在平铺图像以创建背景颜色,所以这无关紧要。无论大小,它都会填充视图的背景。【参考方案2】:无需进行额外的缩放,因为模式应该是平铺的(并且您有常规和@2x 版本)。假设您有pattern.png
和pattern@2x.png
,这里有一个平铺图像的简单方法。
UIColor *pattern = [UIColor colorWithPatternImage:[UIImage imageNamed:@"pattern"]];
[myViewController.view setBackgroundColor:pattern];
【讨论】:
【参考方案3】:是的。您需要为 iphone 和 ipad 使用不同的图像,并为视网膜显示使用不同的图像。如果您将 iphone 图像用于 ipad 或 Retina 显示器,它将显示为像素化。
因此,请确保为每种类型使用准确分辨率的图像。
请查看苹果的文档以了解分辨率详情。
Apple Image resolutions
【讨论】:
以上是关于微妙的图案背景iOS png文件的主要内容,如果未能解决你的问题,请参考以下文章