UIView的坐标原点居中

时间:2014-02-24 20:32:17

标签: ios objective-c uiview uiviewcontroller

我有一个独特的要求,即将UIView的坐标原点设置为视图的中心。为了澄清,原点需要垂直和水平居中,以便向右移动是正X值,向左移动是负值。对于Y,移动到中心标记之上是正的,下面是负的。这与地理坐标基本相同,使用本初子午线与赤道的交点作为原点。

我甚至不确定从哪里开始。任何人都可以提供一些提示吗?谢谢,V

2 个答案:

答案 0 :(得分:1)

将views bounds属性的原点设置为视图的中间位置,如:

CGRect bounds = view.frame;
bounds.origin.x = bounds.size.width / -2.;
bounds.origin.y = bounds.size.height / -2.;
view.bounds = bounds;

答案 1 :(得分:0)

您需要将普通坐标转换为奇怪的函数,反之亦然。

例如UIView子类中的方法

- (CGPoint)normalToStrange:(CGPoint)normal
{
    return CGPointMake(normal.x - self.width / 2, -normal.y + self.height / 2);
}