Re: [問題] frame bound 沒有值?
把storyboard的autolayout關掉
frame就有值了
因為在autolayout下
各control的frame是由NSLayoutConstraint計算的結果
autolayout會在畫面要畫出來的時候才根據NSLayoutConstraint去計算frame
所以在viewDidLoad時self.view的subview是沒有frame的
即便在此時你寫了button.frame = CGRectMake(......);
最後在viewDidAppear的時候你去看button.frame還是會變成你在storyboard上設定的值
你可以在viewDidLoad, viewWillAppear, viewDidAppear都去看subview的frame
你會發現只有在viewDidAppear時才是你在storyboard上設定的值
autolayout是iOS6才有的東西
在排板上非常好用!
有機會再來分享一下最近使用的心得
想了解autolayout與原來的autosizing的差別可以跟著這篇圖文並茂的教學實作看看
http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2
※ 引述《wudunglie2 (RAY)》之銘言:
: 在Mainstoryboard 在viewcontroller 裡面 拉了
: 一個自定義的view
: 透過IBoutlet 連接上該view
: 接著在 viewdidload
: 嘗試把該 view的frame 或者 bounds的值取出來
: 但是都是 0
: 請問這個是那裡出錯了呢?
: 也確定有走過
: -(id)initwithCoder:(NSCoder *)aDecoder
: {
: if((self = [super initwithCoder:aDecoder]))
: {
: [self testInit];
: }
: return self;
: }
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.248.107.168
推
06/28 10:50, , 1F
06/28 10:50, 1F
推
06/28 11:24, , 2F
06/28 11:24, 2F
推
06/28 21:34, , 3F
06/28 21:34, 3F
推
06/28 21:36, , 4F
06/28 21:36, 4F
→
06/29 01:07, , 5F
06/29 01:07, 5F
→
06/29 01:08, , 6F
06/29 01:08, 6F
→
06/29 01:09, , 7F
06/29 01:09, 7F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章