例:微信下面标记栏
//为了便于修改位置,需要设置button上内容的对齐方式为
//水平方向左对齐,垂直方向上对齐
button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
button.contentVerticalAlignment = UIControlContentVerticalAlignmentTop;
//获取图片及文本的大小
CGSize imageSize = button.currentImage.size;
//先让label适应字体大小,否则label大小为(0,0)
[button.titleLabel sizeToFit];
CGSize labelSize = button.titleLabel.frame.size;
//设置image的四周边界
//height、width是button的宽和高
[button setImageEdgeInsets:UIEdgeInsetsMake( (height-imageSize.height-labelSize.height)/2, (width-imageSize.width)/2, (height-imageSize.height+labelSize.height)/2, (width-imageSize.width)/2)];
//设置label的四周边界
[button setTitleEdgeInsets:UIEdgeInsetsMake((height+imageSize.height-labelSize.height)/2, (width-labelSize.width)/2-imageSize.width, 0, 0)];