2015-09-01 31 views
2

我修改AAPLSearchBarEmbeddedInNavigationBarViewController蘋果的UICatalog示例代碼中,以便它將另一個AAPLSearchBarEmbeddedInNavigationBarViewController實例推入導航堆棧時,選擇一個單元格。在第二個視圖控制器中,UISearchBar被設置爲UINavigationBar的標題視圖(就像第一個視圖控件一樣)不可打開(與第一個不同)。這看起來像一個錯誤。我如何解決它?這裏是我修改的UICatalog代碼: https://github.com/stevemoser/UICatalog第二次推送視圖控制器與UISearchController沒有收到觸摸UINavigationBar

另外我用Xcode 6和7進行了測試。它在兩者中都被破壞了。

+1

嘗試使用3D視圖層次結構調試器工具查看當您有第二個控制器時如何繪製事物。可能是紅鯡魚,但是如果你註釋掉self.definesPresentationContext = YES會發生什麼情況。這應該不是真的很重要,因爲這是模態表示,但以防萬一它出於某種原因影響事情。 –

+0

@RoryMcKinnel你把我放在正確的軌道上。看到我的答案。 –

+0

我不喜歡這條線的外觀。不過,據我瞭解,它不應該影響推控制器。我假設它是在那裏,如果你在一個單獨的控制器模態地顯示搜索結果,將強制它在搜索欄下方。無論如何,你的解決方案是有道理的:只有在你是最高管理者的時候才提供上下文。 –

回答

7

解決方法是在離開它時確定第一個VC self.definesPresentationContext = NO,並確保在視圖中調用self.definesPresentationContext=YES確實出現,以便可見VC允許定義演示上下文。

感謝Rory McKinnel讓我走上正軌。

相關問題