iphone - 如何在 Interface Builder 中使用 iPhone 主视图之外的 UI 元素设置 UIScrollView?

标签 iphone interface-builder uiscrollview uitextfield data-entry

我正在我的 iPhone 应用程序中构建一个数据输入表单,但数据字段的数量超出了屏幕的显示范围。我想我应该将它们放入 UIScrollView 中,以便用户可以滚动表单。在 Interface Builder 中构建它的最佳方法是什么?我知道我可以通过编程方式完成此操作,但如果可以的话,我想在 Interface Builder 中完成此操作。问题是,如果 UILabels、UITextFields 等落在 iPhone 主屏幕之外(UIScrollView 变得有用的屏幕部分),我该如何布局它们?

最佳答案

我发现这个问题的最佳解决方法(我认为这对于 Interface Builder 来说是令人尴尬的)是这样的:

  1. 在 UIScrollView 中放置一个“容器”UIView,使用检查器将容器 UIView 的大小设置为所需的大小(例如 320 x 1200),然后将内容添加到该容器 View 中。 (您的按钮、文本字段等)。
  2. 在代码中将 UIScrollView 的 contentSize 设置为与容器 UIView 的大小相同。例如 viewDidLoad 中的某个位置(例如,scrollView.contentSize = containerView.frame.size;)
  3. 要在 Interface Builder 中修改超出 ScrollView 边界的内容,您必须每次将容器 View 拖到 ScrollView 之外,进行修改,然后将容器 View 拖回到 UIScrollView 内并进行构建。

关于iphone - 如何在 Interface Builder 中使用 iPhone 主视图之外的 UI 元素设置 UIScrollView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3458937/

相关文章:

ios - 以前由于内存不足而未显示时,如何在 iPhone 上强制进行 View 渲染?

ios - 如何通过 ScrollView 将 admobs 放入 xcode 4.6

ios - Storyboard与模拟器不同

iphone - SKErrorDomain 代码=0 “Cannot connect to iTunes Store”

cocoa - 过滤出现在 NSPopUpButton 列表中的核心数据实体中的条目

objective-c - iOS Touch 而不是 touchDown?

iphone - 如何使用 json 解析将选定的图像发布到 Web 链接

iphone - iPhone Facebook SDK 的 Facebook 类有取消方法吗?

ios - 如何创建在 XIB 中定义的 View Controller ?

iphone - 如何在 UIScrollView 中获取 UIView 中对象的位置