[英]Flipping Subviews above a main view
我正在嘗試建立一個位於主視圖上方的子視圖,該子視圖的大小約為主視圖的3/4。 當按下按鈕時,子視圖應翻轉到另一個子視圖。 我很近,但是有兩個問題。
第一個問題是,第一次按下翻轉按鈕時,第二個子視圖從全屏開始並縮小到指定的幀大小,而不是渲染任何翻轉動畫。
呈現第二個視圖后,我便可以在第一視圖和第二個視圖之間翻轉(我添加了第二個按鈕以向后翻轉以進行測試)。
我的第二個問題是,當視圖翻轉時,新視圖將在翻轉之前加載,然后發生翻轉。 在建立翻轉視圖之前,我已經建立了翻轉視圖,但是僅當整個屏幕都是視圖時才可以。
這是我的主視圖控制器中的代碼:
- (void)viewDidLoad {
Page1Controller *myPage1=[[Page1Controller alloc] initWithNibName:@"Page1Controller" bundle:nil];
Page2Controller *myPage2=[[Page2Controller alloc] initWithNibName:@"Page2Controller" bundle:nil];
self.page1 = myPage1;
self.page2 = myPage2;
[myPage1 release];
[myPage2 release];
[[page1 view] setFrame:CGRectMake(45, 40, 230, 280)];
[[self view] addSubview:[page1 view]];
[super viewDidLoad];
}
這是兩個按鈕的代碼:
- (void)flipPressed:(id)sender {
[UIView beginAnimations:@"View Flip" context:nil];
[UIView setAnimationDuration:1.5];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:[page2 view] cache:YES];
[page1.view removeFromSuperview];
[[page2 view] setFrame:CGRectMake(45, 40, 230, 280)];
[[self view] addSubview:[page2 view]];
[UIView commitAnimations];
}
- (void)backFlipPressed:(id)sender {
[UIView beginAnimations:@"View Flip" context:nil];
[UIView setAnimationDuration:1.5];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:[page1 view] cache:YES];
[page2.view removeFromSuperview];
[[self view] addSubview:[page1 view]];
[[page1 view] setFrame:CGRectMake(45, 40, 230, 280)];
[UIView commitAnimations];
}
非常感謝您對我的任何一個問題的幫助!
第一個問題:在beginAnimations
之前設置視圖的框架。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.