Sfoglia il codice sorgente

添加了UIView和button的链式调用,添加了圆角

zzb 4 anni fa
parent
commit
ee5ed3e9e3

+ 24 - 1
ZZUIKit/Classes/Ex/Btn/UIButton+ZZEx.h

@@ -21,7 +21,6 @@ NS_ASSUME_NONNULL_BEGIN
 /// btn的点击事件;返回值是blcok1,block1的返回值是btn,block的参数是点击事件
 - (UIButton *(^)(ZZControlEventsBlock))zz_click;
 
-
 /// 文字 系统space 图片
 - (void)zz_contentReverse_simple;
 
@@ -34,6 +33,30 @@ NS_ASSUME_NONNULL_BEGIN
 - (void)zz_contentUpsidedown:(CGFloat)space;
 /// 垂直方向上文字 space 图片
 - (void)zz_contentDownsideup:(CGFloat)space;
+
+/*****************************************/
+
++ (UIButton *(^)(UIButtonType))ZZButton;
+- (UIButton *(^)(NSAttributedString *title, UIControlState status))ZZAttributedTitle;
+// 设置按钮的标题
+- (UIButton *(^)(NSString *title,UIControlState status))ZZTitle;
+// 设置按钮背景图
+- (UIButton *(^)(UIImage *backgroundImage,UIControlState status))ZZBgImage;
+//设置按钮的背景色
+- (UIButton *(^)(UIColor *color))ZZBgc;
+//这只按钮的边框
+- (UIButton *(^)(UIColor *borderColor,CGFloat borderWidth))ZZBorder;
+// 设置按钮的标题颜色
+- (UIButton *(^)(UIColor *titleColor))ZZTitleColor;
+- (UIButton *(^)(UIColor *,UIControlState))ZZTitleColor2;
+// 设置按钮的setImage
+- (UIButton *(^)(UIImage *image,UIControlState status))ZZShowImage;
+- (UIButton *(^)(UIViewContentMode mode))ZZShowImageContentMode;
+// 设置按钮的frame
+- (UIButton *(^)(CGRect frame))ZZSetFrame;
+
+- (UIButton *(^)(UIFont *font))ZZFont;
+- (UIButton *(^)(CGFloat))ZZCornerRadius;
 @end
 
 NS_ASSUME_NONNULL_END

+ 95 - 0
ZZUIKit/Classes/Ex/Btn/UIButton+ZZEx.m

@@ -125,4 +125,99 @@ static void *zz_bgcKey = &zz_bgcKey;
 }
 
 
++ (UIButton *(^)(UIButtonType))ZZButton {
+    return ^UIButton *(UIButtonType type) {
+        
+        return [UIButton buttonWithType:type];
+    };
+}
+
+- (UIButton *(^)(NSAttributedString *title, UIControlState status))ZZAttributedTitle {
+    return ^UIButton *(NSAttributedString *titleName, UIControlState status) {
+        [self setAttributedTitle:titleName forState:status];
+        return self;
+    };
+}
+
+
+- (UIButton *(^)(NSString *title, UIControlState status))ZZTitle {
+    return ^UIButton *(NSString *titleName, UIControlState status) {
+        [self setTitle:titleName forState:status];
+        return self;
+    };
+}
+
+
+- (UIButton *(^)(UIImage *backgroundImage,UIControlState status))ZZBgImage {
+    return ^UIButton *(UIImage *backgroundImage,UIControlState status){
+        [self setBackgroundImage:backgroundImage forState:status];
+        return self;
+    };
+}
+
+- (UIButton *(^)(UIColor * backgroundColor))ZZBgc {
+    return ^UIButton *(UIColor * bgColor){
+        [self setBackgroundColor:bgColor];
+        return self;
+    };
+}
+
+- (UIButton *(^)(UIColor *borderColor,CGFloat borderWidth))ZZBorder {
+
+    return ^UIButton *(UIColor *borderColor,CGFloat borderWidth) {
+        self.layer.borderColor = borderColor.CGColor;
+        self.layer.borderWidth = borderWidth;
+        return self;
+    };
+}
+
+- (UIButton *(^)(UIColor *))ZZTitleColor {
+   return ^UIButton *(UIColor *titleColor){
+        [self setTitleColor:titleColor forState:UIControlStateNormal];
+        return self;
+    };
+}
+
+- (UIButton *(^)(UIColor *,UIControlState))ZZTitleColor2{
+   return ^UIButton *(UIColor *titleColor,UIControlState status){
+        [self setTitleColor:titleColor forState:status];
+        return self;
+    };
+}
+
+- (UIButton *(^)(UIImage *, UIControlState))ZZShowImage {
+    return ^UIButton * (UIImage *currentImage,UIControlState status) {
+        [self setImage:currentImage forState:status];
+        return self;
+    };
+}
+
+- (UIButton *(^)(UIViewContentMode mode))ZZShowImageContentMode{
+    return ^UIButton * (UIViewContentMode mode) {
+        self.imageView.contentMode = mode;
+        return self;
+    };
+}
+
+- (UIButton *(^)(CGRect frame))ZZSetFrame{
+    return ^UIButton *(CGRect frame){
+        self.frame = frame;
+        return self;
+    };
+}
+
+- (UIButton *(^)(UIFont *font))ZZFont{
+    return ^UIButton *(UIFont *font){
+        self.titleLabel.font = font;
+        return self;
+    };
+}
+
+- (UIButton *(^)(CGFloat))ZZCornerRadius {
+    return ^UIButton *(CGFloat radius) {
+        self.layer.cornerRadius = radius;
+        self.layer.masksToBounds = true;
+        return self;
+    };
+}
 @end

+ 1 - 1
ZZUIKit/Classes/Ex/Control/UIControl+ZZEx.h

@@ -6,7 +6,7 @@
 //
 
 #import <UIKit/UIKit.h>
-typedef void(^ZZControlEventsBlock)(UIControl *_Nullable);
+typedef void(^ZZControlEventsBlock)(__kindof UIControl *_Nullable);
 NS_ASSUME_NONNULL_BEGIN
 
 @interface UIControl (ZZEx)

+ 25 - 0
ZZUIKit/Classes/Ex/View/UIView+ZZEx.h

@@ -33,6 +33,31 @@ NS_ASSUME_NONNULL_BEGIN
 
 
 -(void)zz_recursionClearSubviewType:(Class)class;
+
+/**************************************/
+
++ (UIView *(^)(void))ZZNew;
+/**
+从nib加载图片
+ @return self
+ */
++ (UIView *(^)(NSString *))ZZLoadNibName;
++ (UIView *(^)(CGRect))ZZFrameInit;
+- (UIView *(^)(CGRect))ZZSetFrame;
+- (UIView *(^)(UIColor *))ZZBgc;
+- (UIView *(^)(UIColor *))ZZBorderColor;
+- (UIView *(^)(bool))ZZClip;
+- (UIView *(^)(CGFloat))ZZBorderWidth;
+- (UIView *(^)(CGFloat))ZZCornerRadius;
+-(UIView *(^)(BOOL))ZZUserInteraction;
+-(UIView *(^)(BOOL))ZZAutoresizesSubviews;
+-(UIView *(^)(CGFloat))ZZAlpha;
+-(UIView *(^)(BOOL))ZZHidden;
+-(UIView *(^)(UIView *))ZZMaskView;
+-(UIView *(^)(void))ZZClearSubview;
+
+-(UIView *(^)(UIView *))ZZAddSubview;
+-(UIView *(^)(UIView *))ZZBringSubviewToFront;
 @end
 
 NS_ASSUME_NONNULL_END

+ 119 - 0
ZZUIKit/Classes/Ex/View/UIView+ZZEx.m

@@ -40,5 +40,124 @@
     self.layer.mask = maskLayer;
 }
 
+/******************/
 
+ +(UIView *(^)(void))ZZNew{
+    return ^UIView*(void){
+        return [self new];
+    };
+}
+
++ (UIView *(^)(NSString *))ZZLoadNibName{
+    return ^UIView*(NSString *ZNibName){
+        return [[[NSBundle mainBundle] loadNibNamed:ZNibName owner:nil options:nil] firstObject];
+    };
+};
+
++ (UIView *(^)(CGRect))ZZFrameInit{
+    return ^UIView*(CGRect rect){
+        return [[self alloc] initWithFrame:rect];
+    };
+}
+
+- (UIView *(^)(CGRect))ZZSetFrame{
+    return ^UIView*(CGRect rect){
+        self.frame = rect;
+        return self;
+    };
+}
+
+- (UIView *(^)(UIColor *))ZZBgc{
+    return ^UIView *(UIColor *color) {
+        self.backgroundColor = color;
+        return self;
+    };
+}
+
+- (UIView *(^)(UIColor *))ZZBorderColor {
+    return ^UIView *(UIColor *color) {
+        self.layer.borderColor = color.CGColor;
+        return self;
+    };
+}
+
+- (UIView *(^)(bool))ZZClip {
+    return ^UIView *(bool mask) {
+        self.layer.masksToBounds = mask;
+        return self;
+    };
+}
+
+- (UIView *(^)(CGFloat))ZZBorderWidth {
+    return ^UIView *(CGFloat width) {
+        self.layer.borderWidth = width;
+        return self;
+    };
+}
+
+- (UIView *(^)(CGFloat))ZZCornerRadius {
+    return ^UIView *(CGFloat radius) {
+        self.layer.cornerRadius = radius;
+        self.layer.masksToBounds = true;
+        return self;
+    };
+}
+
+-(UIView *(^)(BOOL))ZZUserInteraction{
+    return ^UIView *(BOOL enable){
+        self.userInteractionEnabled = enable;
+        return self;
+    };
+};
+
+-(UIView *(^)(BOOL))ZZAutoresizesSubviews{
+    return ^UIView *(BOOL enable){
+        self.autoresizesSubviews = enable;
+        return self;
+    };
+}
+
+-(UIView *(^)(CGFloat))ZZAlpha{
+    return ^UIView *(CGFloat zalpha){
+        self.alpha = zalpha;
+        return self;
+    };
+}
+
+-(UIView *(^)(BOOL))ZZHidden{
+    return ^UIView *(BOOL enable){
+        self.hidden = enable;
+        return self;
+    };
+}
+
+-(UIView *(^)(UIView *))ZZMaskView{
+    return ^UIView *(UIView *maskV){
+        self.maskView = maskV;
+        return self;
+    };
+}
+
+-(UIView *(^)(void))ZZClearSubview{
+    return ^UIView *(void){
+        [self.subviews enumerateObjectsUsingBlock:^(__kindof UIView * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
+            [obj removeFromSuperview];
+        }];
+        return self;
+    };
+};
+
+-(UIView *(^)(UIView *))ZZAddSubview{
+    return ^UIView *(UIView *v){
+        [self addSubview:v];
+        return self;
+    };
+};
+
+-(UIView *(^)(UIView *))ZZBringSubviewToFront{
+    return ^UIView *(UIView *v){
+        [v bringSubviewToFront:self];
+        return self;
+    };
+};
 @end

+ 5 - 0
ZZUIKit/Classes/Ex/ZZUIKitEx.h

@@ -9,6 +9,7 @@
 #define ZZUIKitEx_h
 
 #import "ZZUIKitTools.h"
+#import "ZZFrame.h"
 #import "UIView+ZZFrame.h"
 #import "UIView+ZZEx.h"
 #import "UIView+ZZShot.h"
@@ -18,9 +19,13 @@
 
 #import "UIButton+ZZEx.h"
 #import "UIButton+ZZAnima.h"
+#import "UIView+ZZCornerRadius.h"
+
 #import "ZZThrottleBtn.h"
 
 #import "UILabel+Ex.h"
 #import "UILabel+ZZPadding.h"
 #import "UILabel+ZZStroke.h"
+#import <ZZFoundation/ZZFoundation.h>
+
 #endif /* ZZUIKitEx_h */

+ 1 - 0
ZZUIKit/Classes/Tools/ZZColor.h

@@ -10,6 +10,7 @@
 #ifndef ZZColor_h
 #define ZZColor_h
 
+FOUNDATION_EXPORT UIColor* zz_RGBA(float r,float g,float b,float a);
 /// rgb初始化Color
 FOUNDATION_EXPORT UIColor* zz_RGB(float r,float g,float b);
 

+ 4 - 0
ZZUIKit/Classes/Tools/ZZColor.m

@@ -8,6 +8,10 @@
 
 #import "ZZColor.h"
 
+UIColor* zz_RGBA(float r,float g,float b,float a){
+    return [UIColor colorWithRed:((r) / 255.0) green:((g) / 255.0) blue:((b) / 255.0) alpha:a];
+}
+
 UIColor* zz_RGB(float r,float g,float b){
     return [UIColor colorWithRed:((r) / 255.0) green:((g) / 255.0) blue:((b) / 255.0) alpha:1.0];
 }

+ 1 - 1
ZZUIKit/Classes/Tools/ZZUIKitTools.h

@@ -9,7 +9,7 @@
 #define ZZUITools_h
 
 #import "ZZFont.h"
-#import "ZZColor.h"
+#import "ZZUIKit/ZZColor.h"
 #import "ZZViewHierarchy.h"
 #import "ZZFrame.h"
 #endif /* ZZUITools_h */

+ 1 - 1
ZZUIKit/Classes/ZZUIKit.h

@@ -29,5 +29,5 @@
 
 #import "ZZTextWidget.h"
 
-#import <ZZFoundation/ZZFoundation.h>
+
 #endif /* ZZUIKit_h */