【发布时间】:2015-01-29 07:58:47
【问题描述】:
我需要知道如何在从情节提要或 nib 加载约束后修改它们。
例如,在故事板中,我横向放置了 5 个视图。在代码中,当视图控制器加载数据时,此视图的位置基于数据。那么有没有可以添加到控制器的方法?我认为 awakeFromNib 会起作用,但事实并非如此。或者也许我用错了。
谢谢你帮助我。
【问题讨论】:
标签: ios objective-c storyboard autolayout nslayoutconstraint
我需要知道如何在从情节提要或 nib 加载约束后修改它们。
例如,在故事板中,我横向放置了 5 个视图。在代码中,当视图控制器加载数据时,此视图的位置基于数据。那么有没有可以添加到控制器的方法?我认为 awakeFromNib 会起作用,但事实并非如此。或者也许我用错了。
谢谢你帮助我。
【问题讨论】:
标签: ios objective-c storyboard autolayout nslayoutconstraint
我以为是这个地方:initWithCoder
或者
数据进来后可以调用:
[self setNeedsUpdateConstraints];
然后你需要实现
- ( void ) updateConstraints
但您也可以只在代码中创建所有约束,然后只添加特定数据所需的约束。
我要做的是:(可能是代码拼写错误,但输入的是 xCode 补全;))
@interface ...
@property (assign, nonatomic) BOOL update;
@end
- ( void ) whatever {
_update = YES;
[self setNeedsUpdateConstraints];
}
- ( void ) updateConstraints {
[super updateConstraints];
if( _update ) {
_update = NO;
....CONSTRAINTS...
}
}
【讨论】: