2013-04-15 46 views
1

我已經包含了<QuartzCore/QuartzCore.h>框架。石英動畫錯誤

上IBAction爲我有這樣的:

- (IBAction)searchOptions:(id)sender {  
    FilterViewController *ctrl = [[FilterViewController alloc] initWithNibName:@"FilterViewController" bundle:nil]; 
    [UIView transitionFromView:self.view toView:ctrl.view duration:1 options:UIViewAnimationOptionTransitionCurlUp completion:nil]; 

    [self.navigationController pushViewController:ctrl animated:NO]; 
} 

當我點擊按鈕,頁面繚繞如你所願:

當我點擊下一步按鈕(這應該捲曲頁後退下)我得到這個錯誤:

主題1:EXC_BAD_ACCESS(代碼= 2,地址= 0x8中)

我覺得問題在於上述操作(而不是解除操作)。

出了什麼問題?

編輯:經過一個小時的閱讀 - 它可能是一個內存問題?

+0

你有#import ? –

+0

我呢,我現在有這部分工作 - 給我2秒將更新問題 –

+0

更新我的問題 –

回答

1

我不知道,但我不認爲UIView保留你傳遞到它的控制器。假設你正在使用ARC,你可以嘗試使FilterViewController成爲一個屬性。在實施改變它

@class FilterViewController; 

@interface YourViewController : UIViewController { 
    FilterViewController *_filterViewController; 
} 

然後到:

即在頭部添加這個

_filterViewController = [[FilterViewController alloc] initWithNibName:@"FilterViewController" bundle:nil]; 
[UIView transitionFromView:self.view _filterViewController duration:1 options:UIViewAnimationOptionTransitionCurlUp completion:nil]; 
[self.navigationController pushViewController:_filterViewController animated:NO]; 

爲了確保它得到保留。

+0

嗨!你認爲這一點我認爲,如果沒問題,我只需要一些幫助來實現它呢?我有FirstViewController和FilterViewController,FirstViewController捲曲顯示過濾器,然後過濾捲曲顯示首先,我把* _filter ...和* _first ...哪個頭謝謝你太多了! –

+1

很高興幫助!如果這是正確的答案,請隨意標記爲這樣;)。 就你而言,最簡單的方法是讓兩個視圖控制器通過給彼此的指針來相互瞭解。所以基本上FilterViewController獲得'@property(強)FirstViewController * firstViewController;'和FirstViewController獲得'@property(強)FilterViewController * filterViewController;'。然後,在總體類(可能是AppDelegate)中,創建兩個視圖控制器並相應地設置屬性。不要忘記在頭文件中使用前向聲明。 – RadicalRaid

+0

嗨,感謝您的評論!越來越近,但仍然掌握着obj-c!(FirstViewController)我有'@property(strong)FilterViewController * filterViewController;'它說**未知的類型名稱FilterViewController,你的意思是FirstViewController * * –

0

對於你做頁面捲曲效果不是真的強制嗎?

[試試這個第一]

- (IBAction)searchOptions:(id)sender { 
    FilterViewController *ctrl = [[FilterViewController alloc] init]; 
    ctrl.modalTransitionStyle = UIModalTransitionStylePartialCurl; 
    [self presentModalViewController:ctrl animated:YES]; 
    } 
+0

嗨,感謝您的建議。是的,這是有效的,我以前使用過這個 - 我需要明確使用curlUp的原因是因爲在curl顯示的頁面上我有一個按鈕,它設置了一些參數,然後將頁面捲曲回去 –