作者s001582000 (仁杰)
看板MacDev
标题[问题] Autolayout的关系叙述
时间Thu Aug 20 10:42:45 2015
是这样的
小弟目前在学习autolayout
我有四个view
每个view的关系式距离10 如果我把第二个view删掉
第三个view之後会因为找不到关系连结而跑到画面(0,0)的位置
又或者是第三个view会跟第一个view距离20
我要怎麽继续让第三个view跟第一个view距离10
示意图
http://imgur.com/DX8uo7F
小弟目前做法是再重新叙述第三个view跟第一个view的关系式
但这样下去不就写到死了吗~~~~~~
请版上各位先进帮小弟解惑Q_Q
********************************************************
是这样的
http://youtu.be/z5VeuixzN_U
在以前的写法
只要将rect.origin.x++跟y++即可
那如果以autolayout要达到这样的效果
会很复杂吗????
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 125.227.150.97
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MacDev/M.1440038570.A.DD6.html
1F:推 Blueshiva: 你这几个view是动态增加减少的吗? 08/20 10:51
是的 再按下remove之後 第二个view被删除 之後的view要补上去 类似android的
线性layout
2F:→ darktt: 这个就算时手动layout也是要重算view3的位置资讯的 08/20 11:43
3F:推 Blueshiva: 我的意思是,这些view的个数是不定的,还是固定就只有 08/20 12:23
4F:→ Blueshiva: 四个,然後有可能会移掉第二个这样? 08/20 12:24
是不固定的
5F:推 Blueshiva: 如果所有都不固定的话,那就每次移除新增就全部重设吧 08/20 13:28
谢谢大大 看来用手刻autolayout的都是神人了
6F:→ howdiun: 不要把他想得太难,其实就是一个reloadView而已 08/20 15:00
7F:推 tentenlee: 这东西干嘛用autolayout.. 我会用TABLEview就是了 08/20 16:36
8F:推 yeah200077: 第三个view新增priority较低的constraint对上第一个vi 08/21 00:25
9F:→ yeah200077: ew 08/21 00:25
10F:→ yeah200077: View太多就建议用手写 08/21 00:26
感谢大大建议
11F:推 howdiun: 把左边跟上面2个constraint设为property 08/21 10:39
12F:→ howdiun: 要变动的时候移除这2个property对应到上一个 08/21 10:39
13F:→ howdiun: romove n 之後再 reload n 08/21 10:41
14F:→ howdiun: 删掉第1个,原本第3个跑到第2个,只要再设定2与1关系即可 08/21 10:44
15F:→ howdiun: 2 08/21 10:44
16F:推 Blueshiva: 问题是原po的view个数不定,也不一定是移掉2,这样的话 08/21 11:48
17F:→ Blueshiva: 理论上应该是会有个array存所有的view,所以才说,要移 08/21 11:48
18F:→ Blueshiva: 掉Nth,就在array中移掉Nth的object,然後剩下的重新跑 08/21 11:49
19F:→ Blueshiva: 一次constraint的设定就好,这样反而最方便 08/21 11:50
啊啊啊啊啊啊 搞不清楚啊~~~
※ 编辑: s001582000 (125.227.150.97), 08/21/2015 17:17:52
20F:推 mraaa: 简单的说,把constrain设Priority,这样View2删了,就会去 08/22 03:01
21F:→ mraaa: 找第二顺位的Constrain 08/22 03:01
22F:→ howdiun: remove n之後只要reload n,因为除了n以外的constraint 08/24 12:24
23F:→ howdiun: 都不会变 08/24 12:24
24F:→ howdiun: reload n的意思是重新设定n与n-1的constraint 08/24 12:25
25F:→ howdiun: 若n=0则设定n与superview的关系 08/24 12:26