我有一个正确显示在 iPhone 6 屏幕上的视图,但需要在 iPhone 5 屏幕上滚动。我正在尝试更改一些自动布局约束以消除滚动后者的需要。
前两张截图是 iPhone 6 和 iPhone 5 上的现有情况。第三张是我想要实现的(仅在 iPhone 5 上)。
我写了以下自动布局约束,但我在这里遗漏了一些东西:
[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-(>=25,<=50)-[blueView]-(>=25,<=50)-[redView]-5-|"
options:0
metrics:nil
views:nameMap]];
这里应该涉及拥抱和/或抗压吗?以什么方式?
编辑以显示更多我的实际代码:
[self addSubview:loginNSignupScrollView]; [self.loginNSignupScrollView addSubview:logoImageView]; [self.loginNSignupScrollView addSubview:horizontalScrollView]; [self.loginNSignupScrollView addSubview:appVersionLabel]; [self.horizontalScrollView addSubview:loginView];[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[loginNSignupScrollView]|" 选项:0 指标:无 意见:名称地图]];
[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[loginView(==350)]" 选项:0 指标:无 意见:名称地图]];
[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-(>=30,<=60)-[logoImageView(==35)]-(>=25,<=50)-[horizontalScrollView]-30-[ appVersionLabel]-5-|" 选项:0 指标:无 意见:名称地图]];
[self addConstraint:[NSLayoutConstraint constraintWithItem:self.horizontalScrollView 属性:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:自己 属性:NSLayoutAttributeHeight 乘数:0.0 常数:350]];