2017-05-09 105 views
0

我剛創建了一個包含動態單元格的可用視圖,正如您可以看到的那樣,單元格具有正確的寬度。但如圖所示,標籤離開了屏幕。我設置了截尾,修正了字體大小......我無法設法讓這個文本被截斷。Swift動態表格文本超出單元格寬度

我應該以編程方式創建cell.text.value嗎?

在這裏非常感謝幫助。 enter image description here

+0

您是否在標籤上設置了追蹤限制? – DonMag

+0

該標籤位於堆棧視圖內,其中包含所有需要的約束...是 – Bubu

+0

您確定堆棧視圖具有所有需要的約束嗎?看起來你沒有在堆棧視圖上設置Trailing約束。 – DonMag

回答

0

您可能沒有在LayoutSubviews()中設置框架。最初當tableviewcell加載時,它總是給出相同的寬度值,但是當layoutSubviews被調用時,它會給出正確的幀。

如果你在故事板上完成了它,那麼你可能已經給出了硬編碼值。

+0

您看到的所有佈局都來自使用堆棧的故事板中的自動佈局,您建議我應該怎麼做?謝謝你 – Bubu

+0

我建議根據你的需要使用自動佈局,建議的總是不夠的,並且長期帶來複雜性。 – Saurav

+0

如何在LayoutSubviews()中設置框架? – Bubu

0

使用自定義TableViewCell的

你可以設計你想要的方式,你也可以很容易地設置標籤/標題寬度高度字體等。

確保您註冊的tableview細胞在viewDidLoad中(),否則會崩潰

+0

你有什麼隨機代碼樣本? – Bubu

+0

在這裏你去... [鏈接](https://makeapppie.com/2016/10/17/custom-table-view-cells-in-swift-3/) 玩它 –

+0

那麼。 ..我已經使用自定義單元格... :-)所以issu位於其他地方。 – Bubu

0

這裏有兩個堆疊的意見,每個相同的內容 - 頂部標籤的文本是this is a really long label that will extend past the right edge

頂部一個是不是有一個拖尾約束。

底部一個確實8尾隨約束。

enter image description here

真的看起來像你碰到的問題。

0

解決了這個問題。最初,我在視圖控制器中放置了一個表視圖,並在IBinspector中將原型單元設置爲1。由於未知原因,約束條件無法正常工作。結束將原型單元格設置爲0並從對象庫中刪除新的表格視圖單元格。

這樣做。