iPhone子视图动画:向下滑动
我已经搜索了一段时间,但我想要的基本上是“presentModalViewController”动画,但另一方面。。。我希望屏幕的顶部下降到底部以显示页面。有人知道那叫什么吗 这是我到目前为止的代码,但它发生得太快了。。。我怎样才能让它慢下来iPhone子视图动画:向下滑动,iphone,animation,subview,Iphone,Animation,Subview,我已经搜索了一段时间,但我想要的基本上是“presentModalViewController”动画,但另一方面。。。我希望屏幕的顶部下降到底部以显示页面。有人知道那叫什么吗 这是我到目前为止的代码,但它发生得太快了。。。我怎样才能让它慢下来 -(void)gotToCreateGameViewController{ CreateNewGameViewController *newGame = [[CreateNewGameViewController alloc]initWithNibName
-(void)gotToCreateGameViewController{
CreateNewGameViewController *newGame = [[CreateNewGameViewController alloc]initWithNibName:@"CreateNewGameViewController" bundle:nil];
self.createNewGameViewController = newGame;
createNewGameViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:newGame animated:YES];
[self.view insertSubview:newGame.view atIndex:0];
[newGame release];
我想你要找的是:UIModAltransationStyleCoverVertical
Presentation Transition Styles
Transition styles available when presenting view controllers.
typedef enum {
UIModalTransitionStyleCoverVertical = 0,
UIModalTransitionStyleFlipHorizontal,
UIModalTransitionStyleCrossDissolve,
UIModalTransitionStylePartialCurl,
} UIModalTransitionStyle;
它从下到上呈现,然后在解散时从上到下呈现。要从上到下转换,您需要滚动您自己的,或者从下面的目标vc开始,并以模式呈现开始vc。我想您正在寻找:UIModalTransitionStyleCoverVertical
Presentation Transition Styles
Transition styles available when presenting view controllers.
typedef enum {
UIModalTransitionStyleCoverVertical = 0,
UIModalTransitionStyleFlipHorizontal,
UIModalTransitionStyleCrossDissolve,
UIModalTransitionStylePartialCurl,
} UIModalTransitionStyle;
它从下到上呈现,然后在解散时从上到下呈现。要从上到下转换,您需要滚动您自己的,或者从下面的目标vc开始,并以模式呈现开始vc。尝试此代码
-(void)gotToCreateGameViewController{
CreateNewGameViewController *newGame = [[CreateNewGameViewController alloc]initWithNibName:@"CreateNewGameViewController" bundle:nil];
self.createNewGameViewController = newGame;
CATransition *transition = [CATransition animation];
transition.duration = 0.05;
transition.timingFunction = [CAMediaTimingFunction
functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type =kCATransitionMoveIn;
CATransition *transition = [CATransition animation];
transition.duration = 0.05;
transition.timingFunction = [CAMediaTimingFunction
functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type =kCATransitionMoveIn;
transition.subtype =kCATransitionFromTop;
transition.delegate = self;
transition.subtype =kCATransitionFromTop;
transition.delegate = self;
[self presentModalViewController:newGame animated:NO];
[self.view insertSubview:newGame.view atIndex:0];
[self.view.layer addAnimation:transition forKey:nil];
[newGame release];
请注意,UIModalTransitionStyle仅适用于iPad应用程序。请参阅文档。尝试此代码
-(void)gotToCreateGameViewController{
CreateNewGameViewController *newGame = [[CreateNewGameViewController alloc]initWithNibName:@"CreateNewGameViewController" bundle:nil];
self.createNewGameViewController = newGame;
CATransition *transition = [CATransition animation];
transition.duration = 0.05;
transition.timingFunction = [CAMediaTimingFunction
functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type =kCATransitionMoveIn;
CATransition *transition = [CATransition animation];
transition.duration = 0.05;
transition.timingFunction = [CAMediaTimingFunction
functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type =kCATransitionMoveIn;
transition.subtype =kCATransitionFromTop;
transition.delegate = self;
transition.subtype =kCATransitionFromTop;
transition.delegate = self;
[self presentModalViewController:newGame animated:NO];
[self.view insertSubview:newGame.view atIndex:0];
[self.view.layer addAnimation:transition forKey:nil];
[newGame release];
请注意,UIModalTransitionStyle仅适用于iPad应用程序。请参阅文档。我的粗俗回答:
如果将初始视图向下移动到y=960(可能需要添加另一个视图,然后将所有内容剪切并粘贴到该视图中),并将第二个视图的y=0,则可以实现以下代码。在实例化一个BOOL(我称之为minemovedUp
)之后:
然后,我将两个按钮(每个视图中一个)连接到以下位置:
-(IBAction)setViewMovedUp:(id)sender
{
[self moveView:0.5];
}
我粗俗的回答:
如果将初始视图向下移动到y=960(可能需要添加另一个视图,然后将所有内容剪切并粘贴到该视图中),并将第二个视图的y=0,则可以实现以下代码。在实例化一个BOOL(我称之为minemovedUp
)之后:
然后,我将两个按钮(每个视图中一个)连接到以下位置:
-(IBAction)setViewMovedUp:(id)sender
{
[self moveView:0.5];
}
我用我试过的一些代码更新了我的问题。。。它不会以我想要的方式工作我用一些我尝试过的代码更新了我的问题。。。它不会按我希望的方式工作。我遇到一些错误,没有声明containerView(它不是),但我不知道用什么代替containerView。我遇到一些错误,没有声明containerView(它不是),但我不知道用什么代替containerView。