// Animate tag view up
[UIView animateWithDuration:.2 animations:^{
_tagView.center = (CGPoint){_tagView.center.x, _tagView.center.y+40};
}];
我正在尝试将我的_tagView设置为当前在IB中的位置,但上面的代码什么也没做。我做错了什么?
答案 0 :(得分:1)
首先,如果要移动视图向上,则需要降低y
值(因为默认情况下原点位于左上角),如下所示:
[UIView animateWithDuration:.2 animations:^{
_tagView.center = (CGPoint){_tagView.center.x, _tagView.center.y - 40};
}];
使用按钮触发操作时,此代码对我来说很合适。你用什么触发运动?这是一个Xcode(iPad)项目,每个按钮点击一个视图垂直向上移动40个像素。
答案 1 :(得分:0)
我认为您必须在Interface Builder中关闭主视图的“Use Autolayout”标志。创建新项目时,默认情况下会启用“自动布局”。
答案 2 :(得分:0)
首先,请确保通过调用addSubview:
将tagView添加到视图层次结构中。其次,在viewDidAppear:
中制作动画;否则,如果要在viewDidLoad中执行此操作,请使用animateWithDuration:delay:options:animations:completion:
。