[問題] autoLayout快搞死我了~~~~~~

看板MacDev作者 (仁傑)時間9年前 (2015/08/31 17:41), 9年前編輯推噓3(307)
留言10則, 4人參與, 最新討論串1/2 (看更多)
各位先進大家好 小弟研究autolayout 已經近一個月了 大概的排版都會用 也能適應各尺寸跟橫 直向 但今天 被問了幾個基本問題都需要想一下 實作修修改改才能回答 原來根本就還不熟= = 其中有個問題我還不知道怎麼回答 有個需求 距離右邊20 高50 寬100 高150 我要隨著螢幕越寬等比例放大 在autoresizing下 關係式如下 http://imgur.com/17hubXG
在4.7吋下寬變成118 所以我就必須要程式去算他的高 那今天在autolayout下 我關係式 http://imgur.com/YuQb7o4
我想問的是 我怎麼隨著4.7吋 寬變成375 讓我在4吋的寬是100的view變成寬是117 或者更大的5.5吋嗎 目前我是用程式去指定他的寬 還麻煩請各位大大解謎 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.150.97 ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1441014074.A.2FD.html

08/31 18:24, , 1F
不要用長寬改用 leading/trailing, 然後用 multiplier
08/31 18:24, 1F

08/31 18:24, , 2F
http://d.pr/MKE5 這裏有個範例
08/31 18:24, 2F
謝謝u大 是我需要的效果 但還在理解當中 為什麼跟contentX關聯1.5倍= =

08/31 20:30, , 3F
看不懂你寫什麼,但是如果你要因畫面改變大小,應該
08/31 20:30, 3F

08/31 20:30, , 4F
用邊界的拘束條件
08/31 20:30, 4F
今天的需求是一個view在3.5吋下 寬100 高150 跟右邊距離20 跟高距離50 要以螢幕變寬而view的寬高以比例放大 在3.5吋下一個view 他的rect是 200 50 100 150 4吋因為跟3.5吋一樣寬所以rect一樣 4.7吋 因為寬變成375 所以view的寬要變成100*375/320=117 他的高要隨著比例 變成117*3/2=176 又要跟右距離20 所以他的view的rect是 238 50 117 176

08/31 21:05, , 5F
寬高可以設置比例啊
08/31 21:05, 5F
我view的寬高比固定2:3 寬100高150 我是要隨著螢幕寬越寬去改變view高 螢幕高改變view不改變 但又要距離右邊20 在u大給的範例中我還要在contentX-40才會達到我要的效果

08/31 23:23, , 7F
re=youtu.be
08/31 23:23, 7F

08/31 23:24, , 8F
這個意思嗎?
08/31 23:24, 8F
謝謝家榮哥(?)完全是這個意思 但我現在在理解裡面的值 我看到你給的值是-1270 這是非常可怕的一件事情

09/01 09:44, , 9F
equalWidth+equalHeight然後superview都指到width
09/01 09:44, 9F

09/01 09:45, , 10F
width的multiplier給3.2, height給2.13333
09/01 09:45, 10F
謝謝h大 但我已經抓到邏輯了 我的做法是top 50 right 20 寬高等比 這三個是固定不變的 接下來就是left去對應到superview的contentX multiplier的值就是我的寬高比 而constant是從中心點160到我view的x軸之間的距離 即是-40 剛剛試了如果依附左邊 下面 上面都可以此邏輯去判定 但做法沒有最好只有更好 還謝謝大家共襄盛舉~~~~ 最謝謝u大替我啟蒙 感動 ※ 編輯: s001582000 (125.227.150.97), 09/01/2015 10:02:03
文章代碼(AID): #1Lv24wBz (MacDev)
文章代碼(AID): #1Lv24wBz (MacDev)