我有一個tabbarview應用程序,在其中一個選項卡中有一個按鈕。當按下該按鈕時,會發生一些情況,用戶將切換到另一個選項卡。UIView在動畫效果上有差距
我在那個按鈕動畫:
UIView * fromView = self.tabBarController.selectedViewController.view;
UIView * toView = [[self.tabBarController.viewControllers objectAtIndex:0] view];
[UIView transitionFromView:fromView
toView:toView
duration:0.6
options:(UIViewAnimationOptionTransitionCurlDown)
completion:^(BOOL finished) {
if (finished) {
self.tabBarController.selectedIndex = 0;
}
}];
這是我從here了。然而,問題在於,在動畫之後,我似乎在屏幕頂部有一個與狀態欄一樣高的間隙。有誰知道這是什麼原因造成的?這種差距迅速關閉動畫完成時(也就是當我們做self.tabBarController.selectedIndex = 0
順便說一句,這個問題如果我換動畫別的東西,甚至沒有動畫仍然存在。
附加信息,這裏的邊框細節:
from frame: x:0.000000, y:0.000000, w:320.000000, h:411.000000
to frame: x:0.000000, y:0.000000, w:320.000000, h:431.000000
似乎有點危險,直接控制由標籤欄視圖控制器管理的視圖。爲什麼不使用setSelectedIndex交換視圖並嘗試在其周圍放置一個動畫塊。 –
您是以編程方式設置任何視圖控制器還是全部通過IB完成? –
@Kris,我不確定你使用setSelectedIndex交換視圖的意思,我認爲這只是標籤欄控制器的屬性? –