[英]XCode 6.3 adding margins to tableviewcell
XCode 6.3 / Swift 1.2是否向UITableViewCell的contentView添加了額外的邊距? 在更新之前,我有一個自定義的UIView,它一直延伸到單元格中的整個屏幕。 例:
現在,單元中的所有內容似乎都有額外的邊距,我不知道它們來自何處。
請注意,這些視圖的寬度在代碼中未作任何改變,並且左右限制如下:
另請注意,我正在使用tableView.separatorStyle = .None
。 我添加這個事實是因為出於某種原因,在我的具有默認分隔符的tableView
之一中,它似乎沒有添加這些額外的邊距。
有人知道他們是否在XCode 6.3中做了一些奇怪的更改嗎? 更新后直接發生此現象。
編輯:
仔細查看“大小”檢查器的以下屏幕快照以了解主要約束:
看看如何檢查“相對於邊距”? 那是你的問題。 如果邊距發生變化,則您的左邊緣也會發生變化。 取消選中該菜單項 ,然后將“常數”更改為零。 這樣做也是為了跟蹤約束,您的問題將結束。
現在讓我們解決更深層的問題:發生了什么變化? 你是絕對正確的,做了什么。 我相信他們已經修復了一個錯誤,並且您陷入了該錯誤中。 記錄顯示我該單元格的preservesSuperviewLayoutMargins
為true
,該表的頁邊距為0,16,0,16
。 即使在iOS 8.2上也是如此,因此iOS 8.2上的有效邊距應為16。但它們為8,就好像preservesSuperviewLayoutMargins
為false
。 但是在iOS 8.3中,可以正確遵守此設置-結果已得到觀察。
因此, 另一種方式來解決這個問題會一直留下您的約束,因為他們,但每個單元的設置preservesSuperviewLayoutMargins
以false
的cellForRowAtIndexPath:
這同樣可以使兩個系統的結果相同。
編輯好消息:此更改似乎已在iOS 9中恢復。因此,不進行更改,您的單元格在iOS 9中的外觀將與在iOS 8.2及更低版本中相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.