通用iOS应用程序-UIButton和UITableView尺寸

通用iOS应用程序-UIButton和UITableView尺寸,ios,ios7,xcode5,Ios,Ios7,Xcode5,我正在用XCode 5.0.2和iOS 7开发我的第一款通用iOS应用程序,我对iPhone和iPad(包括Mini)的屏幕尺寸差异有一些疑问 如果应用程序包含带有自定义.png图像的UIButtons,我是否需要在为iPad开发时增加UIButtons的大小以及更大的图像?。我已经完成了iPhone应用程序的一半,没有使用故事板,而是使用IB创建NIB。我试着在iPad笔尖上使用同样大小的iPhoneui按钮,但它看起来很小。对于这两种不同的设备,使用更大的UIButtons以及自定义大小的p

我正在用XCode 5.0.2和iOS 7开发我的第一款通用iOS应用程序,我对iPhone和iPad(包括Mini)的屏幕尺寸差异有一些疑问

如果应用程序包含带有自定义
.png
图像的
UIButton
s,我是否需要在为iPad开发时增加
UIButton
s的大小以及更大的图像?。我已经完成了iPhone应用程序的一半,没有使用故事板,而是使用IB创建NIB。我试着在iPad笔尖上使用同样大小的iPhone
ui按钮,但它看起来很小。对于这两种不同的设备,使用更大的
UIButton
s以及自定义大小的png图像文件,这是正确的方法吗

同样的问题也适用于UITableView。我需要在iPad上安装更大的吗?。iPhone手机在iPad上看起来更小。另外,请注意,我添加了一个新的特定于iPad的NIB,但将相同的UITableView控件从特定于iPhone的NIB复制到了iPad的NIB

我还阅读了AppCoda,当我用XCode 5打开示例项目时,使用了自定义按钮大小

从Ray Wenderlich的网站上(虽然3岁)可以看到关于自动调整大小的内容


哪种方法是最好的,或者我需要知道什么?

对于按钮的图像,您需要不同尺寸的视网膜和非视网膜。如果你决定在iPad上安装更大的按钮,那么你当然需要更大的图像。对于UITableViews,这将取决于您希望如何处理它们。如果您想让UITableView占据整个屏幕,那么它肯定会更大(尽管自动布局或布局约束可以为您解决这个问题)。

1。关于布局:

自动调整大小遮罩
布局约束
(也称为
自动布局
)都解决了与您创建的nib(即,如果视图方向发生变化或如果在不同的屏幕大小上运行)相比“如果视图大小不同,会发生什么情况”的问题

您应该在每个用户界面组件(
UIButton
UITableView
等)上设置
自动调整掩码大小
布局约束
,告诉他们应该如何调整大小

如果您只是针对iOS 6.0+,则可以使用
布局约束
(处理大小调整的最新推荐方法)。但是,如果您对
自动调整遮罩大小
更满意,您仍然可以根据自己的喜好使用它们(只需在笔尖上关闭
自动布局

这是Ray Wenderlich网站上的一篇文章,介绍了
自动布局

2。关于背景图像:

正如您所提到的,您正在使用
.png
图像作为按钮背景,您应该确保您包含的图像适用于
ui按钮的所有可能大小(包括
retina
非retina
图像)

理想情况下,您可以设计背景图像,使其可以拉伸,并使用
UIImage
的方法
resizebleimagewithcapinsets:resizengmode:
为背景图像创建
UIImage

这里有一个例子也应该很有帮助


您可能还可以通过查看
UIImage
(谷歌it->苹果的链接变化太频繁)和
resizebleimagewithcapinsets:resizingMode:
方法的文档获益。

我查看了这些文章,它们都很棒。在我的情况下,我的应用程序将只在iPhone/iPod和iPad两种版本上处于纵向模式。我还在自动布局功能()上查看了此视频。它再次显示了3.5英寸和4英寸iPhone屏幕的纵向/横向模式,而iPad则没有。我的基本问题是,如果我有一个针对iPhone/iPod的UIButton,那么3.5英寸和4英寸屏幕上的UIButton的大小应该是多少,而iPad的屏幕更大,应该是多少。自动布局在这里有用吗?。谢谢