我想解僱一個視圖控制器從底部到頂部而不是標準的從右到左的過渡。這是可能嗎?這裏是我到目前爲止的代碼:關閉一個UIViewController從底部到頂部而不是從右到左
CGRect screenRect = [[UIScreen mainScreen] applicationFrame];
CGRect endFrame = self.view.frame;
endFrame.origin.y = screenRect.origin.y - screenRect.size.height;
UIView *aView = [[self.view retain] autorelease];
[self.view.window addSubview:aView];
aView.frame = CGRectMake(0, 0, 320, 460);
[UIView animateWithDuration:0.5
animations:^{
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
aView.frame = endFrame;
}
completion:^(BOOL finished) {
[self dismissModalViewControllerAnimated:NO];
[aView removeFromSuperview];
}
];
這確實會導致過渡;但之前的視圖控制器不會出現,直到動畫後,因爲我不能解僱,直到它完成後...任何想法?
您是否正在使用基於導航控制器的應用程序? – booleanBoy
是的,這是一個基於導航控制器的應用程序 – avenged
你試過了presentModalViewController嗎?你可以使用達到你想要達到的動畫效果 – booleanBoy