我有一個使用autolayout的故事板中的自定義UIView,所以我不知道UIView的確切高度。我需要它在視圖中繪製單個項目,所以更大的UIViews將有更多的行。UIView大小和故事板
我在哪裏可以確定身高?我想基於這個初始化一個數據結構,但到目前爲止,我唯一獲得非零UIView高度/寬度的地方是在drawRect中,我想在我打這個方法之前設置它。
我有一個使用autolayout的故事板中的自定義UIView,所以我不知道UIView的確切高度。我需要它在視圖中繪製單個項目,所以更大的UIViews將有更多的行。UIView大小和故事板
我在哪裏可以確定身高?我想基於這個初始化一個數據結構,但到目前爲止,我唯一獲得非零UIView高度/寬度的地方是在drawRect中,我想在我打這個方法之前設置它。
嘗試從viewDidAppear中檢查視圖幀的大小: 在這一點上,視圖應該有它的最終尺寸計算,你應該能夠做你想做的。
當你說更多的行,你是什麼意思?你只是在你的視圖中使用表視圖?
viewDidLayoutSubviews
在您的視圖控制器將是一個明智的地方,雖然基於視圖大小的數據結構不聽起來很MVC,但我會假設你知道你在做什麼。
這將在旋轉後被調用。
的drawRect例程中是的,我同意。數據結構基本上是適合視圖的表示。所以如果視圖很高,則會有更多的文本行,而較短的視圖會有更少的行。如果有更好的方法來獲取這些信息,所以我可以設置它,我想使用它,但到目前爲止,我沒有看到其他任何地方。 – Steve
我的意思是我放在視圖中的更多行文本我自己在視圖 – Steve