我的代码中有很多地方需要根据UIViewController
中的视图布局来处理。例如,我在一个nib中有一个视图,然后我在代码中捕获并用于为另一个层创建一个掩码,但我需要等到掩码视图及其子视图具有正确的大小才能执行此操作。
我发现,虽然hacky,但我可以通过创建一个计数器来实现这一点,该计数器每次调用viewDidLayoutSubviews
时递增,并在第二次调用时触发我希望执行的代码 - 出于某种原因,大多数观点在第二次调用viewDidLayoutSubviews
之前尚未正确表达。
就像我说的那样,这看起来很糟糕,iOS更新可能会破坏我的代码。有没有人有更好的方法呢?
- (void)viewDidLoad
{
[super viewDidLoad];
self.layoutCount = 0;
}
- (void)viewDidLayoutSubviews
{
[super viewDidLayoutSubviews];
self.layoutCount ++;
if (self.layoutCount == 2)
{
// perform final layout code, e.g. create masks
}
}
答案 0 :(得分:1)
最安全的方法可能是"刷新"每次调用function enableDraggable( el ){
$( el ).draggable({
containment: ".fw-content",
cursor: "help",
grid: [ 80, 80 ]
}).css({'position': 'relative','left':'', 'top':''});
}
时都会有掩码。这样你就不必担心意见是否已经列出。