ios button 自定义

可以通过子类化按钮来定制属于你自己的按钮类。

在子类化的时候你可以重载下面这些方法,这些方法返回CGRect结构,指明了按钮每一组成部分的边界。

注意:不要直接调用这些方法, 这些方法是你写给系统调用的。

 

// these return the rectangle for the background (assumes bounds), the content (image + title) and for the image and title separately. the content rect is calculated based
// on the title and image size and padding and then adjusted based on the control content alignment. there are no draw methods since the contents
// are rendered in separate subviews (UIImageView, UILabel)

- (CGRect)backgroundRectForBounds:(CGRect)bounds;        //返回背景边界 (image + title)
- (CGRect)contentRectForBounds:(CGRect)bounds;               //
- (CGRect)titleRectForContentRect:(CGRect)contentRect;      //返回title边界
- (CGRect)imageRectForContentRect:(CGRect)contentRect;  //返回image边界

例:

#define BACK_BOUNDS_W   54.0
#define BACK_BOUNDS_H    22.0

- (CGRect)backgroundRectForBounds:(CGRect)bounds
{
    return CGRectMake((bounds.size.width - BACK_BOUNDS_W)/2,
                      -BACK_BOUNDS_H,
                      BACK_BOUNDS_W,
                      BACK_BOUNDS_H);
}


如下图中的选项按钮自定义图片和文字的位置

ios button 自定义_第1张图片

你可能感兴趣的:(ios)