按下UIButton时移动UIView

时间:2010-09-07 16:24:33

标签: iphone ipad uiview sdk uibutton

我的观点是如下:

BigView
- UIScrollView
  - View 1
  - View 2
  - View 3
- UIView
  - UIButton

现在我想,当我按下UIButton时,BigView(也包括按钮)将100px移动到顶部(因此BigView的部分不再可见)并且另一个UIView在免费中可见BigView下的空间。

你遇到了问题? :)

我怎样才能做到这一点?

提前致谢!

3 个答案:

答案 0 :(得分:13)

只需在单击按钮时调用的方法中执行UIView动画:

[UIView beginAnimations:@"MoveView" context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
[UIView setAnimationDuration:0.5f];
self.BigView.frame = CGRectMake(newXPoistion, newYPosistion, samewidth, sameheight);
[UIView commitAnimations];  

这将使你的同意动画更好地为你所提供的新的cooridinates动画,并且应该在该视图中移动所有内容

答案 1 :(得分:4)

如果您想要即时移动(没有动画),您可以这样做:

CGRect rect = someView.frame;
self.someView.frame = CGRectMake(0, 0, rect.size.width, rect.size.height);

答案 2 :(得分:0)

Swift 3

  let rect = someView.frame

  self.view1.frame = CGRect(x: view1.frame.midX, y: 400, width: rect.width, height: rect.height)

//或

 rectHeigh = someView.frame.height
 rectWidth = someView.frame.width

 view1.frame = CGRect(x: view1.frame.midX, y: 400, width: rectWidth, height: rectHeigh)