我见过一些xCode项目,它们将项目的高度除以2,以便计算位置的y坐标。像这样的东西
CGFloat logoY = floorf((navBarHeight - logo.size.height) / 2.0f);
为什么有必要除以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)
垂直居中。否则它将被放置在视图的底部。