簡體   English   中英

ScrollView中的UILabel sizeToFit

[英]UILabel sizeToFit in ScrollView

我在ScrollView中得到了UILabel的怪異行為。 我正在將動態文本分配給UILabel並使用sizeToFit,我可以記錄分配了文本后似乎正確更改的新大小,但是看不到模擬器和真實設備中反映的更改大小。 這是分配之前和分配文本之后的日志

--txt Frame {{15, 325}, {291, 36}}
--txt Frame1 {{15, 296}, {291, 446.5}}

如您所見,盡管我看不到設備和模擬器的變化,但尺寸(高度)卻有所變化。 請幫忙。

嘗試在sizeToFit()之后添加它

    self.view.setNeedsLayout()
    self.view.layoutIfNeeded()

override func viewWillLayoutSubviews() { self.myLabel.layoutIfNeeded() }

在使用sizeToFit方法之前,是否已設置該標簽的numberOfLines屬性。

可能也是導致問題的原因。

可能是標簽框已更改,但標簽的numberOfLines屬性設置為1,因此它僅顯示1行。

嘗試在使用sizeToFit方法之前設置行數屬性,例如

label.numberOfLines = 0;
[label sizeToFit];

這將設置標簽中任意數量行的所有文本。 希望對您有所幫助。

在嘗試了不同的方法之后,我最終親自在IB中手動擴展了contentView的高度。 它不是最優雅的解決方案,但目前可以使用:(

暫無
暫無

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

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