2015-11-04 63 views
0

我想添加一個UIView到我有的滾動視圖。沒有錯誤或錯誤,儘管運行代碼時沒有任何顯示。UIScrollView不正確地添加子視圖在Swift

那就是: scrollView.contentSize = CGSizeMake(375,667)是正確創建

let newStory:InboxStory = InboxStory() 
    newStory.titleLabel?.text = "test it" 
    newStory.frame = CGRectMake(0, 0, 375, 667) 

scrollView.addSubview(newStory as UIView) 

的一切,我的觀點有其放置的autoLayout的標籤。

這裏是我的標籤的autoLayout: enter image description here

眼下,UIScrollView中保持爲空(或至少看上去空白)。有什麼我失蹤或沒有想過?我的autoLayout會導致問題嗎?

謝謝

回答

1

InboxStory是UIView的子類嗎? titleLabel是它的子視圖嗎?但是在Storyboard中,它將它作爲scrollview的子視圖放入。然後在其頂部添加視圖newStory(帶有不透明白色背景),以便它完全填充滾動視圖。所以,你知道發生了什麼嘗試更換

scrollView.addSubview(newStory as UIView) 

隨着

scrollView.insertSubview(view:newStory, belowSubview: newStory.titleLabel) 

您應該添加titleLabel作爲newStory的子視圖,然後使該滾動視圖的子視圖。

+0

是的,InboxStory是UIView的子類,titleLabel是它的子視圖(它是一個標籤,但是)。是否真的沒有辦法添加一個通用的「容器」視圖及其所有其他子視圖?我必須單獨通過它們並添加每個元素?感謝您的澄清,這非常有幫助。 –

+0

這些問題更具修辭性,陳述你打算做什麼,但是然後指出你做了什麼。如果要在Storyboard中佈局newStory,請拖出一個uview查看單擊身份檢查器並將該類更改爲InboxStory,然後將titleLabel作爲子視圖(UILabel's是UIView的子類)添加。或者不要在故事板中佈置任何東西,並以編程方式執行所有操作但僅僅因爲一個UIView子類具有UILabel屬性並不意味着沒有初始化它,設置它的框架,然後將其添加爲子視圖。 – beyowulf

+0

只是禮貌地詢問是否有解決方法。沒有必要讓人煩惱。但感謝您的答案。 –

相關問題