3

我只是想知道是否可以顯示一個沒有動畫的細節視圖控制器(從右側滑入窗口)。我期待有一些動畫布爾參數,但它似乎沒有。splitViewController showDetailViewController沒有動畫?

這是我的全部:

[self.splitViewController showDetailViewController:detailViewController sender:self]; 

我在這裏失去了一些東西?或者是沒有辦法做到這一點?

回答

0

兩種選擇:您可以使用委託加載視圖控制器。您需要實施splitViewController:showDetailViewController:sender:方法。另外,(雖然文檔似乎阻止這一點),你可以只分配新detailViewController到splitViewController的viewControllers直接財產:

NSArray *vcArray = @[self.splitViewController.viewControllers[0],detailViewController]; 
self.splitViewController.viewControllers = vcArray; 

從技術上講,你應該檢查,以確保現有viewControllers陣列第一有兩個元素。

1

這可以通過使用類方法performWithoutAnimationUIView來完成,例如:

[UIView performWithoutAnimation:^{ 
    [self showDetailViewController:_detailedViewController sender:self]; 
}]; 
+0

這是行不通的。 – 2015-12-03 05:48:13

+0

在'UISplitViewController',一個'UIWindow'根視圖控制器上調用了' - [showDetailViewController:sender:]'。 (截至iOS 10.3) – Gary 2017-05-21 09:16:46

+0

爲我工作:) – 2017-11-14 07:44:16