如何定位UIView?

gar*_*uan 10 cocoa-touch uiviewcontroller uiview

我花了几个小时尝试定位UIView并最终想出我需要修改视图框架.所以我像这样在UIViewController子类中添加了一个'setPosition'方法

- (void) setPosition:(CGPoint)position
{

    CGRect newFrame = self.view.frame;
    newFrame.origin.x = position.x;
    newFrame.origin.y = position.y;
    self.view.frame = newFrame;

}
Run Code Online (Sandbox Code Playgroud)

然而,这似乎很简单,我不明白为什么UIViews已经没有这个方法,这让我觉得这可能不是正确的方法.这是我的问题......

这种方法还可以,或者我在做一些我不应该做的事......出于某种原因?

Luk*_*ice 12

像你在这里一样重新复制,修改和设置框架是一般如何完成的.这也可以通过创建一个rect并直接设置来完成:

UIView.frame = CGRectMake(50,50,50,50);//x,y,w,h

在动画块中执行此操作将为这些更改设置动画.

或者,您可以使用以下内容设置视图中心点:

UIView.center = CGPointMake(50,50);