UIButton

作者: 沁晓Chr | 来源:发表于2015-12-22 18:38 被阅读248次
  • btn系统创建类型
typedef NS_ENUM(NSInteger, UIButtonType) {
    UIButtonTypeCustom = 0,                         // no button type
    UIButtonTypeSystem NS_ENUM_AVAILABLE_IOS(7_0),  // standard system button

    UIButtonTypeDetailDisclosure,
    UIButtonTypeInfoLight,
    UIButtonTypeInfoDark,
    UIButtonTypeContactAdd,
    
    UIButtonTypeRoundedRect = UIButtonTypeSystem,   // Deprecated, use UIButtonTypeSystem instead
};

NS_CLASS_AVAILABLE_IOS(2_0) @interface UIButton : UIControl <NSCoding>

+ (instancetype)buttonWithType:(UIButtonType)buttonType;
  • 关于btn,关于contentInset的一些细节
在button中有一个UIImageView和UILable时(默认懒加载),他们的contentInset并不是自己本身的属性,它们本来是没有内边距的,这这属性是button给它们封装的,为了btn的内部布局

所以一般btn有三个contentInset设置,这三个属性是定义在UIButton的,是btn它的特有属性,UIImageView和UILable没有
@property(nonatomic)          UIEdgeInsets contentEdgeInsets UI_APPEARANCE_SELECTOR; // default is UIEdgeInsetsZero
@property(nonatomic)          UIEdgeInsets titleEdgeInsets;                // default is UIEdgeInsetsZero
@property(nonatomic)          UIEdgeInsets imageEdgeInsets;                // default is UIEdgeInsetsZero
typedef struct UIEdgeInsets {
    CGFloat top, left, bottom, right;  // specify amount to inset (positive) for each of the edges. values can be negative to 'outset'
} UIEdgeInsets;
Paste_Image.png Paste_Image.png Paste_Image.png Paste_Image.png
  • 关于btn,内部布局的另外两个设置
    除了上面的三个属性,还有两个继承自UIControl得属性
@property(nonatomic) UIControlContentVerticalAlignment contentVerticalAlignment;     // how to position content vertically inside control. default is center
@property(nonatomic) UIControlContentHorizontalAlignment contentHorizontalAlignment; // how to position content hozontally inside control. default is center
typedef NS_ENUM(NSInteger, UIControlContentHorizontalAlignment) {
    UIControlContentHorizontalAlignmentCenter = 0,
    UIControlContentHorizontalAlignmentLeft   = 1,
    UIControlContentHorizontalAlignmentRight  = 2,
    UIControlContentHorizontalAlignmentFill   = 3,
};
![Uploading Paste_Image_510398.png . . .]

相关文章

网友评论

      本文标题:UIButton

      本文链接:https://www.haomeiwen.com/subject/bpxvhttx.html