为什么将y值除以2

时间:2014-05-05 14:33:52

标签: ios objective-c

我见过一些xCode项目,它们将项目的高度除以2,以便计算位置的y坐标。像这样的东西

CGFloat logoY = floorf((navBarHeight - logo.size.height) / 2.0f);

为什么有必要除以2?

2 个答案:

答案 0 :(得分:1)

正如@ Stonz2所说,这个代码垂直标注徽标。但最好使用autolayout constraints来做到这一点。另外不要忘记,UIView有“中心”。在这里可能更方便的财产。例如,代码

CGFloat logoX = floorf((navBarWidth - logo.size.width) / 2.0f);
CGFloat logoY = floorf((navBarHeight - logo.size.height) / 2.0f);
logo.frame.origin = CGPointMake(logoX, logoY);

相当于

logo.center =  CGPointMake(floorf(navBarWidth / 2), floorf(navBarHeight / 2));

答案 1 :(得分:0)

垂直居中。否则它将被放置在视图的底部。