【问题标题】:Is it possible to access/manipulate the constraints in a nib file from the view it's loaded into?是否可以从加载到的视图中访问/操作 nib 文件中的约束?
【发布时间】:2013-11-08 21:25:57
【问题描述】:

示例项目:http://cl.ly/1g1L3E2Z0r1c

我创建一个 nib 文件,然后在其中创建一些视图,然后将其加载到另一个视图控制器中。在我引入的视图中,它是 UIView 的子类,我为其属性设置了插座。我有一个专门针对它从顶部距离的限制。

但是当我尝试在代码中访问它时(如下所示),我不能,它说它是空的:

self.tutorialScreen3.textLabelDistanceFromTop.constant += 150.0;
NSLog(@"%@", self.tutorialScreen3.textLabelDistanceFromTop);

我做错了什么?

【问题讨论】:

    标签: ios objective-c autolayout nib nslayoutconstraint


    【解决方案1】:

    在这一行

    [[[NSBundle mainBundle] loadNibNamed:@"View" owner:nil options:nil] lastObject];
    

    您正在从 View.xib 文件加载最后一个视图,它是视图 3,但您的属性 textLabelDistanceFromTop 未与此视图连接,而是与视图 2 连接。

    您只需要在视图 3 中创建与在视图 2 中相同的约束,并将 textLabelDistanceFromTop 属性与视图 3 中的适当约束连接起来,它就不再是 nil 了。

    我已经在你的项目中做了这个,所以你可以从这个位置下载它http://goo.gl/gGvIkn

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-19
      • 1970-01-01
      • 1970-01-01
      • 2015-04-21
      • 1970-01-01
      相关资源
      最近更新 更多