簡體   English   中英

XCode 6.3在tableviewcell中添加邊距

[英]XCode 6.3 adding margins to tableviewcell

XCode 6.3 / Swift 1.2是否向UITableViewCell的contentView添加了額外的邊距? 在更新之前,我有一個自定義的UIView,它一直延伸到單元格中的整個屏幕。 例:

在此處輸入圖片說明

現在,單元中的所有內容似乎都有額外的邊距,我不知道它們來自何處。

在此處輸入圖片說明

請注意,這些視圖的寬度在代碼中未作任何改變,並且左右限制如下:

在此處輸入圖片說明

另請注意,我正在使用tableView.separatorStyle = .None 我添加這個事實是因為出於某種原因,在我的具有默認分隔符的tableView之一中,它似乎沒有添加這些額外的邊距。

有人知道他們是否在XCode 6.3中做了一些奇怪的更改嗎? 更新后直接發生此現象。

編輯: 在此處輸入圖片說明

仔細查看“大小”檢查器的以下屏幕快照以了解主要約束:

在此處輸入圖片說明

看看如何檢查“相對於邊距”? 那是你的問題。 如果邊距發生變化,則您的左邊緣也會發生變化。 取消選中該菜單項 ,然后將“常數”更改為零。 這樣做也是為了跟蹤約束,您的問題將結束。

現在讓我們解決更深層的問題:發生了什么變化? 你是絕對正確的,做了什么。 我相信他們已經修復了一個錯誤,並且您陷入了該錯誤中。 記錄顯示我該單元格的preservesSuperviewLayoutMarginstrue ,該表的頁邊距為0,16,0,16 即使在iOS 8.2上也是如此,因此iOS 8.2上的有效邊距為16。但它們為8,就好像preservesSuperviewLayoutMarginsfalse 但是在iOS 8.3中,可以正確遵守此設置-結果已得到觀察。

因此, 另一種方式來解決這個問題會一直留下您的約束,因為他們,但每個單元的設置preservesSuperviewLayoutMarginsfalsecellForRowAtIndexPath: 這同樣可以使兩個系統的結果相同。

編輯好消息:此更改似乎已在iOS 9中恢復。因此,不進行更改,您的單元格在iOS 9中的外觀將與在iOS 8.2及更低版本中相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM