2

我想指定中心的坐标。

- (Void) viewDidLoad
{
    [super viewDidLoad];
    self.motherButton.center = CGPointMake (-100, self.motherButton.center.y);
}

在上面的代码中,motherButton 没有移出屏幕。

你怎么去?我想在动画中移动。

4

1 回答 1

1
- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    self.motherButton.center = CGPointMake (-100, 100);
}

原因

  • viewDidLoad在自动布局完成之前发生。所以motherButton的位置被autolayout改变了
  • viewDidAppear自动布局完成后发生。

注意事项

  1. 您的项目是为较旧的 ios 版本构建的吗?如果是这样,那么当启用自动布局时,Xcode 可能会添加一些约束。

  2. 您始终可以修改 nib 文件中的约束(自动布局),也可以通过编程方式修改。在 nib 文件中单击每个视图并查看大小检查器。

  3. 添加日志消息以检查帧大小并查看自动布局何时何地更改帧。

  4. 对于您以编程setTranslatesAutoresizingMaskIntoConstraints方式创建的视图NO

    setTranslatesAutoresizingMaskIntoConstraintsUIView是在/NSView使用它的方式中定义的方法,v1.translatesAutoresizingMaskIntoConstraints = NO其中 v1 是任何以编程方式创建的视图。

    注意 - Xcode 也有帮助,按 Option 并单击方法以了解更多信息

  5. 观看关于自动布局介绍视频的 WWDC 2012视频链接到自动布局视频介绍

于 2012-09-28T02:37:44.903 回答