- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我遇到了一个问题,我不知道如何在某些特定 View 上使用没有 addConstraints
函数的旧函数 constraintsWithVisualFormat
。
头文件说:
This method will be deprecated in a future release and should be avoided. Instead use +[NSLayoutConstraint activateConstraints:].
好的,我对类函数没意见,但我是否误解了什么?我正在使用纯 AutoLayout
和 UIScrollView
( Technical Note ) 解决我的问题。
所以我可以这样做,现在一切都会好起来的,但以后就不会了:
let views = ["containerView" : self.containerView]
self.scrollView.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|[containerView]|", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views))
self.scrollView.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|[containerView]|", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: views))
这种方法是否不在后台设置 NSLayoutConstraint
的 firstItem
或 secondItem
?
如何为这个例子模仿正确的 VF?
我知道如何使用新的 anchor 语法创建相同的约束,但我很好奇将来如何使用 VFL!?
最佳答案
constraintsWithVisualFormat
没有问题。 header 只是建议您将 self.scrollView.addConstraints(...)
替换为 NSLayoutConstraint.activateConstraints(...)
。
let views = ["containerView" : self.containerView]
NSLayoutConstraint.activateConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|[containerView]|", options: [], metrics: nil, views: views))
NSLayoutConstraint.activateConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|[containerView]|", options: [], metrics: nil, views: views))
[containerView]
是您的容器 View ,|
是 super View — 它们是 firstItem
和 secondItem
。
关于iOS:如何在没有 someView.addConstraints 的情况下使用 constraintsWithVisualFormat?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32684791/
我已经添加了这样的约束,但无法获得正确的 View 框架。 [self addSubview:self.scrollView]; [self.scrollView addSubview:self
我正在学习如何以编程方式使用 NSLayoutConstraints,主要是 constraintsWithVisualFormat,为此我正在尝试使用此布局重新创建 View : 这个 View 由
我已设置 ScrollView 并向 ScrollView 添加约束。但它显示空白屏幕。请检查以下代码。 override func loadView() { super.lo
我是 iOS 初学者,在我的项目中,我使用自动布局(constraintsWithVisualFormat)以编程方式在 UIView 上添加了一些文本字段,但两个文本字段之间的空间不固定. 根据我的
我在 Swift 2.0 中遇到 AutoLayout 的奇怪问题 self.webView = WKWebView() self.view.addSubview(self.webView!) var
我想在容器 View 的右下角放置一个指示器 View ,我有这个代码来插入 View var img:UIImageView? img = UIImageVi
我的模型中有一个标签列表。我想将它们作为标签添加到 tagView UIView 中作为 subview 。 NSMutableArray *list = [NSMutableArray new];
假设我有一个动态创建的 UIView 数组,并且我将它们添加到同一个父 View ,我可以使用 constraintsWithVisualFormat 来设置约束,以便它们垂直堆叠吗? constra
我有一个非常简单的用户界面,可以很好地与 constraintsWithVisualFormat 配合使用,我尝试用 constraintWithItem 替换它,但由于某种原因它无法正常工作。我不知
尝试使用 iOS 的可视化格式语言,但在尝试初始化约束时遇到 sigabrt。这段代码有什么明显的问题吗? NSNumber *inset = [NSNumber numberWithFloa
我正在尝试 Swift 并使用布局格式。我使用的 IDE 是 Xcode6-Beta2。 var viewDictionary:Dictionary = ["myButton": myButt
我遇到了一个问题,我不知道如何在某些特定 View 上使用没有 addConstraints 函数的旧函数 constraintsWithVisualFormat。 头文件说: This method
我只是在玩 constraintsWithVisualFormat 但不知道该怎么做。 我有两个 View 放置在一起,水平方向的边距为 10 像素。两个 View 的 Y 位置相同。 我尝试了以下方
我需要在我的应用程序中使用 constraintsWithVisualFormat 实现 UIScrollView 可能有人会用一些代码指导我。谢谢! import UIKit class ViewC
我认为很容易回答:如果我不想使用 [NSLayoutConstraint constraintsWithVisualFormat:options:metrics:views:] 的选项参数,应该传递什
所以我有一个项目,并且项目中的 UI 是完全编码的(根本没有 .xib 文件或 Storyboard)。使用 Objective-C,我们可以传递 nil 或 0 作为 options 参数的参数。像
我在我的演示项目中编写了以下代码。 func createConstraints() -> Void { //Views to add constraints to
我是一名优秀的程序员,十分优秀!