Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何适应iPhone4的屏幕分辨率?_Iphone_Screen Resolution - Fatal编程技术网

如何适应iPhone4的屏幕分辨率?

如何适应iPhone4的屏幕分辨率?,iphone,screen-resolution,Iphone,Screen Resolution,据了解,iPhone 4有一个新的更好的屏幕分辨率: 3.5英寸(对角线)宽屏多点触摸显示屏 326 ppi时的960 x 640像素分辨率 这个小细节会对我们的应用程序产生重大影响。网络上的大多数演示应用程序都有一个共同点:它们在屏幕中定位视图,并认为屏幕的固定大小为320 x 480像素。因此,大多数(如果不是所有的话)开发者所做的是:他们以这样一种方式设计每件事情,即一个可触摸的区域(例如)是50 x 50像素大。刚好够点击它。物体相对于左上角进行了定位,以达到屏幕上的特定位置——比如说中

据了解,iPhone 4有一个新的更好的屏幕分辨率:

3.5英寸(对角线)宽屏多点触摸显示屏
326 ppi时的960 x 640像素分辨率

这个小细节会对我们的应用程序产生重大影响。网络上的大多数演示应用程序都有一个共同点:它们在屏幕中定位视图,并认为屏幕的固定大小为320 x 480像素。因此,大多数(如果不是所有的话)开发者所做的是:他们以这样一种方式设计每件事情,即一个可触摸的区域(例如)是50 x 50像素大。刚好够点击它。物体相对于左上角进行了定位,以达到屏幕上的特定位置——比如说中间,或者底部的某个位置

当我们开发高分辨率应用程序时,它们可能无法在旧设备上运行。如果他们这样做了,他们将遭受4倍于任何图像大小的痛苦,不得不在内存中缩小它们。

包括史蒂夫·乔布斯的以下文字记录

…它使您的应用程序能够运行 自动在这一点上,但它渲染 您的文本和控件位于更高的位置 决议你的应用看起来很均匀 更好,但如果你做一点 工作,然后他们将看起来惊人。所以 我们建议你这样做

因此,我由此推断,如果您使用现有的API,您的应用程序将得到扩展。如果您利用新的ios4api,就可以使用新的像素获得所有groovy。

是的,这是真的

据WWDC称,苹果似乎已经为其构建了某种形式的自动转换,这样应用程序的分辨率就不会完全消失。考虑将dvd转换为HDTV


我的猜测是,苹果知道大多数标准开发人员一直在使用什么,并且已经在使用这些标准进行即时转换。当然,如果您正在编程一个应用程序以利用新的分辨率,那么它将比Apple auto conversion的结果要好得多。

这纯粹是猜测,但如果分辨率真的是960 x 640,则分辨率正好是当前版本的两倍。对于iPhone来说,检查应用程序的构建目标并检测应用程序的遗留版本并简单地将其扩展2是非常简单的。你永远不会注意到其中的差别。

听起来显示器还可以,但我担心游戏的逻辑性。touchesbeated位置会在新的解决方案中返回点吗?屏幕边界会有所不同,这些类型的东西可能会给我带来潜在的问题。

为了显示目的而缩放到双分辨率是很简单的,但是这种缩放会应用到所有输入/输出屏幕坐标的api吗?如果不是的话,事情就要破裂了,不是吗

如果它在整个框架中得到广泛处理,那就足够公平了。。我可以想象有很多潜在的api的这种影响。

根据苹果文档:

在具有高分辨率屏幕的设备上,
图像名为:
图像及其内容文件:
,以及
initWithContentsOfFile:
方法 自动查找的版本 使用
@2x
在其名称中使用修饰符。如果找到一个, 它将加载该图像。如果你这样做 不提供高分辨率版本 对于给定的图像,图像对象 仍然加载标准分辨率 图像(如果存在)并对其进行缩放 在绘图过程中

加载图像时,UIImage对象会自动设置大小和 将特性缩放到适当的值 基于图像文件的后缀。 对于标准分辨率的图像,它 将比例特性设置为1.0,然后 将图像的大小设置为 图像的像素尺寸。用于图像 文件名中带有@2x后缀, 它将“比例”特性设置为2.0,然后 将宽度和高度值减半为 补偿比例因子。这些 减半后的值与 所需的基于点的标注 在逻辑坐标空间中使用 渲染图像


对于正在寻找移动web界面解决方案的人,请查看Webkit博客上的这篇文章:


Webkit似乎在四年前就解决了这个问题。

您所有的标签和系统按钮都将是326dpi,但在添加高分辨率资源之前,您的图像仍将是像素的两倍。我目前正在更新我的应用程序。如果您在iPhone4 sim卡上构建和运行,那么它将以50%的比例显示,进入“窗口>缩放>100%查看真正的差异!”!标签很平滑,我的图片看起来很震撼

虽然我不同意基于主观的关闭,但直到新手机发布,人们可以玩它们之前,没有办法真正回答这个问题。这很愚蠢——其结果是相当合乎逻辑的。通过将主视图转换为一半大小和高度,同时将其大小和高度增加一倍,您可以轻松地进行模拟。我做了,这很糟糕。为什么所有好的问题最终都会成为社区维基的问题?但请记住,如果所有图形的大小都是社区维基的4倍(即当你将高度和宽度增加一倍),那么所有旧设备都会很难加载巨大的文件并将其缩小。也许,我们不知道苹果是否会像区分iphone和ipad应用一样区分iphone 4应用和传统iphone应用。如果有专门为iPhone4设计的东西在以前的版本中是不可用的,这是有可能的。以前的版本无法解决这一问题,如果要伤害那些需要缩小尺寸的、带有高分辨率图形的弱小、陈旧的设备,那将是愚蠢的。如果你需要将二进制文件与所有额外的图形捆绑在一起,这仍然是一件令人沮丧的事情。1MB的png将变成5MB的png。我想计算的地方是如此之低,以至于任何API都在上面。因此,他们可以很容易地从info.plist读取一个值,以查看t