是否可以从加载到的视图中访问/操作 nib 文件中的约束?
Posted
技术标签:
【中文标题】是否可以从加载到的视图中访问/操作 nib 文件中的约束?【英文标题】:Is it possible to access/manipulate the constraints in a nib file from the view it's loaded into? 【发布时间】:2013-11-08 21:25:57 【问题描述】:示例项目:http://cl.ly/1g1L3E2Z0r1c
我创建一个 nib 文件,然后在其中创建一些视图,然后将其加载到另一个视图控制器中。在我引入的视图中,它是 UIView 的子类,我为其属性设置了插座。我有一个专门针对它从顶部距离的限制。
但是当我尝试在代码中访问它时(如下所示),我不能,它说它是空的:
self.tutorialScreen3.textLabelDistanceFromTop.constant += 150.0;
NSLog(@"%@", self.tutorialScreen3.textLabelDistanceFromTop);
我做错了什么?
【问题讨论】:
【参考方案1】:在这一行
[[[NSBundle mainBundle] loadNibNamed:@"View" owner:nil options:nil] lastObject];
您正在从 View.xib
文件加载最后一个视图,它是视图 3,但您的属性 textLabelDistanceFromTop
未与此视图连接,而是与视图 2 连接。
您只需要在视图 3 中创建与在视图 2 中相同的约束,并将 textLabelDistanceFromTop 属性与视图 3 中的适当约束连接起来,它就不再是 nil 了。
我已经在你的项目中做了这个,所以你可以从这个位置下载它http://goo.gl/gGvIkn
【讨论】:
以上是关于是否可以从加载到的视图中访问/操作 nib 文件中的约束?的主要内容,如果未能解决你的问题,请参考以下文章