我有一個帶有三個動態行的UITableView
。當第一次顯示UITableViewController
時,一切正常。旋轉之後,儘管我將setLayoutMargins
設置爲零,但其中包含數據的行仍會得到縮進。直到現在,我無法在另一個項目中重現此問題。它只出現在iOS 8中,但只在一張桌子上。表格的相同來源在測試項目中正常工作,沒有問題。這裏唯一的區別是它在一個容器中有其他一些視圖。UITableViewCell的縮進僅在iOS 8上旋轉後才發生變化
我檢查了自動佈局約束,旋轉方法,評論事情 - 都沒有成功。縮進的變化發生在willRotateToInterfaceOrientation
和didRotateToInterfaceOrientation
之間或在viewWillTransitionToSize
之後。我甚至更新到iOS 8.1,結果相同。
有人經歷過類似的行爲嗎?
PS: 我還注意到,當在iOS 8上將佈局邊距設置爲零時,動畫不像使用默認值(使用縮進)那樣平滑。在iOS 7上,動畫始終保持平滑。
編輯:
我找到了一些東西下來。如果將UITableViewController
嵌入到UINavigationController
中,則旋轉時會發生縮進。如果你進一步旋轉它會回到它設置的縮進(在我的情況下沒有縮進)。
如果將UITableViewController
嵌入到容器中(並且此容器位於導航控制器中),而旋轉後單元格將其默認縮進返回。如果進一步旋轉,此行爲保持不變(始終縮進)。
是否有一些事件未發送給子視圖控制器,或者您沒有使用嵌入到UINavigationController
中的UITableViewController
?