原文地址:onevcat.com/2013/12/code-vs-xib-vs-storyboard/? 感謝大牛
一些IB小技巧
最后分享一些IB使用上的小技巧作為結(jié)束吧郎仆。其中很多方法也可以用在StoryBoard上憔古,所以在向我自己之前xib使用者生涯致敬的同時(shí),也算是一點(diǎn)小的備忘總結(jié)吧乌昔。
同時(shí)添加多個(gè)outlet
在IB中,選中一個(gè)view并右鍵點(diǎn)擊,將會(huì)出現(xiàn)灰色的HUD速种,可以在其上方便地拖拉或設(shè)定事件和outlet。你可以同時(shí)打開多個(gè)這樣的面板來(lái)一次性添加所有outlet哭当。右鍵點(diǎn)擊面板猪腕,隨便拖動(dòng)一下面板,然后再打開另一個(gè)荣病。你會(huì)發(fā)現(xiàn)前一個(gè)面板也留下來(lái)了码撰,這樣你就可以方便地進(jìn)行拖拽設(shè)定了。
當(dāng)然个盆,對(duì)于成組和行為類似的IBOutlet脖岛,應(yīng)該直接使用IBOutletCollection來(lái)進(jìn)行處理會(huì)更方便。
可視化坐標(biāo)距離
IB最煩人的問(wèn)題就是對(duì)其颊亮。用代碼的時(shí)候我們可以明確地指定x,y坐標(biāo)柴梆,但是換到IB的時(shí)候我們更多的時(shí)候是靠拖拽UIView來(lái)布局。比如需要三個(gè)間隔相同的label终惑,除了用強(qiáng)大的肉眼來(lái)估測(cè)距離是否相等以外绍在,難道只能乖乖分別選中三個(gè)label,記下它們的坐標(biāo)然后打開計(jì)算器來(lái)做加減法么雹有?顯然不要那么笨偿渡,試試看選中一個(gè)label,然后按住option鍵并將鼠標(biāo)移動(dòng)到其他label上試試霸奕?你可以發(fā)現(xiàn)view之間的距離都以很容易理解的方式顯示出來(lái)了溜宽。不僅是同層次的view,被選中view與其他層次的view之間的距離關(guān)系也可以同樣顯示质帅。
在一組view層次中進(jìn)行選擇
對(duì)于一些復(fù)雜的view層級(jí)關(guān)系适揉,我們往往直接在IB中選擇會(huì)比較困難。比如view相互覆蓋時(shí)煤惩,我們很難甚至不能在編輯視圖中選中底層的view嫉嘀。這時(shí)候一般的做法是打開左側(cè)的view層級(jí)面板,一層層展開然后選擇自己需要的view魄揉。其實(shí)我們也有更簡(jiǎn)單的方法:按住Cmd和Shift剪侮,然后在需要選擇的view上方按右鍵,就可以列出在點(diǎn)擊位置上所有的view的列表洛退。藉此就可以方便快速地選中想要的view了票彪。
添加輔助線
這么高大上的技巧必須放在最后啊...在左邊的層級(jí)列表中雙擊某個(gè)view,然后Cmd+_或者Cmd+|即可在選中的view上添加一條水平或者垂直中心的輔助線不狮。當(dāng)然這個(gè)輔助線是可以隨意移動(dòng)的降铸。如果干過(guò)設(shè)計(jì)的同學(xué)肯定明白這個(gè)的意義了,在之后的對(duì)齊和設(shè)計(jì)變更的時(shí)候都有重要的參考價(jià)值摇零。