2013-01-01 22 views
1

我正在使用iCarousel庫來顯示類似於Coverflow的UI。直接動畫iCarousel子視圖往往會炸燬,所以我爲我的動畫創建了一個包裝,並在其內部粘貼了一個子視圖,它看起來像挖掘蓋子。然後我隱藏實際的iCarousel視圖,並在其上面製作假蓋子的動畫。翻轉視圖僅在隱藏時才起作用,但在顯示時不起作用

我正在使用UIViewtransitionWithView:duration:options:animations:completion:方法,但我遇到了一些麻煩。當第一次在屏幕上動畫另一個視圖時,視圖將不顯示任何動畫。當動畫出來時,視圖正確翻轉並隱藏。

我的視圖層次結構如下所示:

  • 主視圖中,從筆尖加載
  • 包裝視圖
    • 視圖過渡從
    • 視圖轉變到

視圖我是transiti oning是包含UITableViewController子類的UINavigationController視圖。而不是最初的動畫,UINavigationController會出現,然後視圖向上增長一點,就好像它佔據了狀態欄所佔用的空間。

任何想法爲什麼表視圖可能是這樣的動畫? (我懷疑遏制API和/或wantsFullscreen,雖然我沒有明確地使用它們。我只是通過addSubview:安裝意見後包裝。)

這裏是我的「翻動」的代碼,即動畫每次但第一:

- (void) flipInWithCompletion:(MBTransitionCompletion)completion { 
BOOL displayingPrimary = [self isDisplayingPrimaryView]; 

UIView *frontView = [self frontView]; 
UIView *backView = [self backView]; 
UIView *wrapperView = [self wrapperView]; 

[wrapperView addSubview:frontView]; 

[UIView transitionWithView:wrapperView 
        duration:0.8 
        options:UIViewAnimationOptionTransitionFlipFromRight 
       animations:^{ 
        [wrapperView addSubview:backView]; 
        [frontView removeFromSuperview]; 
       } 
       completion:^(BOOL finished) { 
        [self setIsDisplayingPrimaryView:!displayingPrimary]; 
        if (completion) { 
         completion(); 
        } 
       } 
]; 

}

什麼可能導致表視圖,而不是增長使包皮翻轉的?

編輯:

我做了a video demoing確切的問題。

回答

1

聲音像視圖沒有正確加載之前,它開始動畫英寸我想我記得以前有類似的問題。嘗試先將它添加到視圖中,然後將其刪除,然後嘗試將其設置到位以查看是否修復了它。

雖然這不是一個真正的解決方案,但它應該給你一個線索,可能是錯誤的。

+0

是的,添加和刪除視圖肯定有幫助,但假蓋沒有出現在第一次翻轉。看起來像某種初始化故障。我顯然需要閱讀文檔。 :-) – Moshe

相關問題