我想要更新一个在故事板中的UIView(并从故事板实例化)在应用程序加载时。
我需要以动态方式定位几个图标(界面构建器目前还无法让我这样做)。 但是,如果我将我的代码放在viewDidAppear或viewDidLoad中,似乎调用太晚了。
以下是视图加载时的第一两秒钟发生的情况:
稍后它会到达正确的位置(因为代码被调用)。
我的问题是,我需要在哪里初始化这些对象的位置,以便它们不会在一秒钟后突然跳转。 viewDidLoad和viewDidAppear太晚了吗? 为什么!? :)
override func viewDidAppear(animated: Bool)
{
initView()
_gridLines = false
}
func initView()
{
_cameraFeed.initAfterLoad()
//center the buttons on half distance between middle button and screen edge
var middleDistance:CGFloat = _swapButton.frame.origin.x + _swapButton.frame.width/2
_linesButton.frame.origin.x = middleDistance/2 - _linesButton.frame.width/2
_flashButton.frame.origin.x = middleDistance + middleDistance/2 - _flashButton.frame.width/2
_selectPhotos.frame.origin.x = middleDistance/2 - _selectPhotos.frame.width/2
}
欢迎提供Swift和Objective-C的解决方案!