开发者

Moving an UIView when UIButton is pressed

my view hierachy is following:

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

now i want, that when i pres开发者_JAVA技巧s the UIButton, the BigView (which includes the button as well) moves 100px to the top (so parts of the BigView aren't visible any longer) and another UIView gets visible at the free space under the BigView.

You get the problem? :)

How can I achieve this?

Thanks in advance!


Just do a UIView animation in the method you call when the button is clicked:

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

That will animate the bigview to the new cooridinates you give and should move everything within that view aswell


If you want an instant move (without animation) you can do it like this:

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


Swift 3

  let rect = someView.frame

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

// Or

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

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

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜