typedef struct {
CGFloat top, left, bottom, right;
} UIEdgeInsets;
// top 正(向下移動) 負(向上移動)
// left 正(向右移動) 負(向左移動)
// bottom 正(向上移動) 負(向下移動)
// right 正(向左移動) 負(向右移動)
我的理解:
比如說亲族,UIButton 設置Image
[button setImage:backgroundButtonImage forState:UIControlStateNormal];
假如說:btn 的大行崩选: 64 * 64 Image的大小 32 * 32 這個時候礁遣,image是在Button中顯示的部翘,通過設置contentEdgeInsets河闰,來改變Image在Btn 中的位置
按照我的理解可以這樣解釋:top就是距離頂部的距離在默認的基礎上又加上設置的距離,拿開頭的button來說锨匆,在button僅設置image的時候(如果同時設置了image和title效果又是不一樣的,下面會詳解冬筒,稍安勿躁)恐锣,image默認是居中的,相當于進行了這樣的設置:
[button setImageEdgeInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
如果我們在這個時候設置了:
[button setImageEdgeInsets:UIEdgeInsetsMake(20, 0, 0, 0)];
就相當于在圖片居中的基礎上舞痰,將圖片又下移了20土榴,如果是-20則是在原有的基礎上向上移20,其他幾個參數(shù)同理响牛,正數(shù)就是距相應的邊的距離
增加玷禽,負數(shù)就是距相應的距離減少。
http://00red.com/blog/2015/07/28/teacher-swift-ui-button/
http://victorchee.github.io/blog/button-layout-with-image-and-title/