iOS拉伸适合所有屏幕尺寸?

时间:2014-08-19 22:14:43

标签: ios objective-c iphone

所以我最近一直在为iOS制作应用程序,而且我遇到了两难的问题。我正在制作迷你合成器,我开始制作GUI。我开始制作键盘(现在是2个八度)并测量了白键的大致长度。这一切都运行得很好,直到我在4英寸的iPhone上运行它。键太小,它们没有覆盖全屏等......所以我想我可以将各个关键图像放入容器中拉伸取决于iPhone的分辨率,因此内部的图像(按键本身)将根据容器的大小以百分比拉伸。

事情是我不知道应该怎么做。我应该使用什么元素来包含图像/键?

1 个答案:

答案 0 :(得分:2)

通常,您要对新应用程序执行的操作是使用自动布局。这使您可以以与屏幕大小无关的方式设置各种UI元素之间的关系。

如果您直接在故事板上创建视图,则可以在那里添加约束。

另一方面,如果您在代码中创建视图,则需要使用NSLayoutConstraint类来创建它们(文档中提供了更多信息,特别是对于Visual Format语言)


在这个例子中,它听起来就像你在容器上的约束,它将它固定到它的超级视图,例如:

@H:|[container]|
@V:|[container]|

以及键的比例约束(将其宽度设置为,例如,父容器的给定部分宽度)。


请注意,此方法(使用自动布局,但具有相同的基本布局)可能不适合所有情况。

特别是,在平板电脑上显示完全不同的布局实际上是有意义的,因为你有更多的键盘空间。