iOS 系統(tǒng)自定義的 UIButton是默認(rèn)圖片在左邊文字在右邊,但是有的時候我們在開發(fā)中會遇到形形色色的按鈕,總結(jié)起來說,改變按鈕中文字與圖片的位置只需要重寫 UIButton中的 imageRectForContentRect 方法 和 titleRectForContentRect方法。下邊以我自定義的圖片在上文字在下按鈕為例,直接上代碼
class CLButton: UIButton {
//所定義的圖片高度占按鈕高度的比例
var IWTabBarButtonImageRatio :CGFloat = 0
override func imageRectForContentRect(contentRect: CGRect) -> CGRect {
let imageW = contentRect.size.width
let imageH = contentRect.size.height * IWTabBarButtonImageRatio
return CGRectMake(0, 0, imageW, imageH)
}
override func titleRectForContentRect(contentRect: CGRect) -> CGRect {
let titleY = contentRect.size.height * IWTabBarButtonImageRatio;
let titleW = contentRect.size.width;
let titleH = contentRect.size.height - titleY;
return CGRectMake(0, titleY, titleW, titleH);
}
}