CGPointMake 在 viewDidLoad 中不起作用
Posted
技术标签:
【中文标题】CGPointMake 在 viewDidLoad 中不起作用【英文标题】:CGPointMake doesn't work in viewDidLoad 【发布时间】:2012-09-20 15:51:04 【问题描述】:我有一个按钮需要在 viewDidLoad 上移动,但它不想移动... 奇怪的是,如果我在 -(IBAction) 上使用相同的确切代码,那么它应该会移动......任何线索为什么会发生这种情况? 我用来移动按钮的代码是这样的:
self.myButton.center = CGPointMake(50, 120);
感谢您的帮助。 和平, 马西
【问题讨论】:
尝试将代码放入viewWillAppear:
。
您确定视图已加载吗?如果还没有,那么按钮将不会被配置。为什么不尝试在设置中心点之前输入self.view.alpha = 1.0f
?
首先感谢您的帮助,但它不适用于 alpha 设置...我还注意到,如果我设置一个至少 0.9 秒的计时器来调用相同的 void代码它可以工作,但它只有在时间不少于 0.9 并且之后正常调用 void [self myVoid]; 时才有效;
我必须补充一下,我在 Xcode 4.5 上,也许这种奇怪的行为是因为在这个版本的 Xcode 中发生了一些变化?
也许吧。我不太确定为什么会这样。也许将代码放在动画块中,然后将动画持续时间设置得很低?
【参考方案1】:
对于遇到相同问题的任何人,我在此步骤中找到了解决方案:presentViewController: crash on ios <6 (AutoLayout) 删除“使用自动布局”选项让我的应用正常运行。
【讨论】:
哦,自动布局,你真是太麻烦了!很好地追踪它。 是的...这真的让我发疯了...但我很确定这是因为新的 xcode... 同样的问题。 Xcode 6. 我没有删除自动布局选项。怎么办?以上是关于CGPointMake 在 viewDidLoad 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
CGRectMake、CGPointMake、CGSizeMake、CGRectZero、CGPointZero 在 Swift 中不可用