作者homelife (SKY)
看板MacDev
標題[問題] 請教關於iOS上addSubview的constraints
時間Tue Apr 23 20:45:52 2019
我想讓user按一個按鈕後會出現一個半透明的view整個蓋在原本的畫面上。
目前的做法是拉一個View到View Controller Scene裡面,如圖:
https://imgur.com/RwoELrG
然後按下按鈕後會跑addSubview跟constraints的語法:
https://imgur.com/v31fHB2
但是實際跑的時候會出現錯誤,如圖:
https://imgur.com/2GbFqmf
如果不加constraints,單純只addSubview的話就不會有錯誤,所以問題應該是出在
constraints上,由錯誤訊息來看,原因好像跟繼承有關?
但因為還是個新手,實在不知道問題在哪
請問這個問題該如何解決呢?
感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.228.160.181
※ 文章網址: https://webptt.com/m.aspx?n=bbs/MacDev/M.1556023554.A.E7E.html
1F:推 ppppman: 你可以拉一個view 關聯到你的code裡面用i 114.33.28.196 04/23 21:01
2F:→ ppppman: sHidden來控比較簡單 新手用code寫constr 114.33.28.196 04/23 21:01
3F:→ ppppman: aints難度高很多 114.33.28.196 04/23 21:01
我一開始的想法也是要這樣寫的,但是我計畫是之後還會有好幾個不同的view會是一開始
沒有,按了某個按鈕後顯示到同一個View Controller上。
也就是說如果全部都拉到View Controller裡的話在IB中就會有許多View重疊,會比較亂,
也因此我就去google後知道了可以把View拖到View Controller Scene這個方式,
讓我可以用IB編輯view又不會把主畫面弄得許多view蓋在一起,就到了現在這個狀態了。
可以的話還是希望能弄懂這個部分。
※ 編輯: homelife (61.228.160.181), 04/23/2019 21:22:21
4F:推 darktt: 你應該是self.view加入constraints,不是220.133.234.121 04/23 21:20
5F:→ darktt: tapView220.133.234.121 04/23 21:20
6F:→ darktt: 另外現在有Layout Anchors可以使用,不需220.133.234.121 04/23 21:22
7F:→ darktt: 要再用舊的方法了,教學:220.133.234.121 04/23 21:22
謝謝你,我晚上來研究看看
※ 編輯: homelife (61.228.160.181), 04/23/2019 21:28:11
10F:→ MOONY135: LOG就有寫了 丟去餵狗就好 123.194.180.20 04/23 22:13
11F:推 otaku5566: present一個背景透明的VC 59.115.183.66 04/23 22:23
12F:→ otaku5566: 然後這VC的constraints用storyboard拉 59.115.183.66 04/23 22:24
13F:→ otaku5566: 就不會擠在一個VC搞得很亂了 59.115.183.66 04/23 22:25
14F:推 tentenlee: 我記得要先addView才能去拉她跟view的114.137.141.132 04/23 22:49
15F:→ tentenlee: 約制114.137.141.132 04/23 22:49
後來是用Layout Anchors實作成功,謝謝大家的指教!
※ 編輯: homelife (61.228.164.170), 04/24/2019 22:53:10
16F:推 briat2004: 半透明的view我都用window 101.8.200.230 04/25 23:31