簡單來說有兩個方法:
1、弄一個比較大的隱形的UIButton在上面
2、把原本的button變大,然後設定button. contentEdgeInsets(或是titleEdgeInsets, imageEdgeInsets)的值
2可以用code也能用storyboard
contentEdgeInsets跟html的padding相似:view的邊框跟內容的間距。
你的button加大多少pixel,edge的總和要等於加大的長度,才能讓button看起來跟之前一樣
用storyboard舉例:
constraint用的是Equal Height,然後right button長寬比是1:1
然後加個20的constraint上去,也就是說長寬各加了20像素上去
(Multiplier在這裡沒有影響)
Edge上下跟左右總和都是20
程式的話就只要一行:
button.contentEdgeInsets = UIEdgeInsetsMake(10.0f, 10.0f, 10.0f, 10.0f);
比較要注意的是:
因為是整個button變大了,所以基本上background最好是透明的,image會跟text互擠,所以最偷懶就是背景圖上打文字壓成一張圖,放在button .image上
沒有留言:
張貼留言