我的故事板中间有一个方形图像视图:280,140(垂直) 当应用程序启动时,我可以通过按下按钮移动此imageView。我使用:
移动imageView _mainImage.frame = CGRectMake(_mainImage.frame.origin.x + 2, _mainImage.frame.origin.y, _mainImage.frame.size.width, _mainImage.frame.size.height);
在应用程序运行时,我不断向mainView添加新的imageView:
UIImageView *imgView;
imgView = [[UIImageView alloc] initWithFrame:CGRectMake(0, yCoordinate, 50, 10)];
imgView.backgroundColor = [UIColor whiteColor];
[self.view addSubview:imgView];
每次我调用此代码时,我放置在中间并移动的方形图像视图将被设置回其起始位置。似乎主视图得到了重置"每次调用addSubview。有没有办法在没有mainView" reset"?
的情况下添加子视图答案 0 :(得分:7)
您的视图很可能是使用Autolayout设置的(这是故事板或笔尖的默认设置),当您添加新的子视图时,会执行布局传递,将您的视图位置重置为原始约束定义的位置。
您应该通过更新其约束来移动视图,或者关闭Autolayout。有许多文章解释如何做这些事情中的任何一个。