ios - 不遵守使用 ScrollView 的 Storyboard约束

标签 ios objective-c iphone storyboard

我对 iOS 很陌生,尤其是对使用 Storyboard 的复杂 View 。我已经开始尝试使用 AutoLayout 开发以下屏幕,因此我无需担心不同的 iDevices 屏幕尺寸。

我正在使用 ScrollView 将内容移动到可见空间,同时需要使用键盘输入一些信息。问题是我多次重新创建所有约束,试图使字段符合 ScrollView 的宽度。实际上,在运行时,所有字段都显示为大于 ScrollView 宽度(就像向右溢出屏幕宽度一样)。奇怪的是按钮尊重它的宽度。当我在 iPhone 6s Plus 上将方向更改为横向时,这些字段的宽度小于屏幕宽度,就好像我已经定义了一个特定的大小,并且按钮继续根据它的约束遵守大小。有什么想法吗?

层次结构:

View Controller
  View A
    Scroll View
      View B
        Logo / App name / UITextFields / Switch / Button / Link

基本上,滚动受到 View A 的约束。 View B 受到与 View A 和滚动边距相等的宽度的约束。

当前 Xcode 版本:7.2 (7C68)

最佳答案

Scrollview constraints

请找到添加到 ScrollView 的约束,即顶部、左侧、右侧、底部约束。 以同样的方式为 ScrollView 中的单个元素设置约束,即 textfieldbutton。对于这些元素,设置左、右、上和高度约束。我已在我的代码中添加以实现您的功能,请参见下面的屏幕截图。 Portrait mode Landscape mode

关于ios - 不遵守使用 ScrollView 的 Storyboard约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34946486/

相关文章:

java - 协助将 Java 转换为 Objective-C

iphone - -sizeWithFont 在设备上的功能不同

ios - 如何在自定义 UISlider 中在 slider 值 0 之前和 slider 值 100 之后提供填充

iphone - 正确从 View 和数组中删除对象?

ios - Swift - ScrollView 小于主视图

ios - JSON 到多维数组

ios - URLSessionDidFinishEventsForBackgroundURLSession 不调用 - Objective-C

iphone - 如何在 MKOverlayView 上显示图像?

ios - 类型 'String' 不符合 'SequenceType' 的协议(protocol)

iOS UIWebView 中的 Javascript console.log()