IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> OC Extension NSObject+Chain_hx(UI链式布局) -> 正文阅读

[移动开发]OC Extension NSObject+Chain_hx(UI链式布局)

一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络,希望未来技术之巅上有你们也有我。

下载工具类链接:https://download.csdn.net/download/weixin_38716347/78400499

简书提供的demol链接:https://download.csdn.net/download/weixin_38716347/78400658

在这里插入图片描述

使用

使用起来非常简单,自己看看源码就知道了。
在这里插入图片描述

UILabel *label = UILabel
                .alloc
                .init
                .addTo(self.view)
                .hx_tintColor([UIColor blueColor])
                .hx_tag(1)
                .hx_text(@"fenghanxu")
                .hx_alpha(0.5)
                .hx_frame(CGRectMake(50, 80, 150, 50))
                .hx_contentMode(UIViewContentModeScaleToFill);


UIButton *btn = UIButton.alloc.init.addTo(self.view).hx_title(@"fenghanxu",UIControlStateNormal).hx_frame(CGRectMake(50, 150, 150, 50)).hx_titleColor([UIColor blueColor],UIControlStateNormal).hx_image([UIImage imageNamed:@"logo1024"],UIControlStateNormal);

提供的方法

@interface UIView (Chain_hx)
/** View是否允许交互 */
- (UIView * _Nonnull (^)(BOOL ))hx_userInteractionEnabled;
/** View标识 */
- (UIView * _Nonnull (^)(NSInteger ))hx_tag;
/** View frame约束方式(相对父类)*/
- (UIView * _Nonnull (^)(CGRect ))hx_frame;
/** View bounds约束方式(相对自己)*/
- (UIView * _Nonnull (^)(CGRect ))hx_bounds;
/** View以中心为对齐方式 */
- (UIView * _Nonnull (^)(CGPoint ))hx_center;
/** View背景颜色 */
- (UIView * _Nonnull (^)(UIColor * ))hx_backgroundColor;
/** View 透明度*/
- (UIView * _Nonnull (^)(CGFloat ))hx_alpha;
/** View 是否隐藏*/
- (UIView * _Nonnull (^)(BOOL ))hx_hidden;
/** View 填充方式*/
- (UIView * _Nonnull (^)(UIViewContentMode ))hx_contentMode;
/** View 描边颜色*/
- (UIView * _Nonnull (^)(UIColor * ))hx_tintColor;

@end

@interface UIImageView (Chain_hx)
/** ImageView设置图片 */
- (UIImageView * _Nonnull (^)(UIImage * ))hx_image;
/** ImageView高亮图片 */
- (UIImageView * _Nonnull (^)(UIImage * ))hx_highlightedImage;
/** ImageView 设置高亮状态(默认不是高亮状态)*/
- (UIImageView * _Nonnull (^)(BOOL ))hx_highlighted;
/** ImageView(加入图片数组可播放动画) */
- (UIImageView * _Nonnull (^)(NSArray<UIImage *> * ))hx_animationImages;
/** ImageView(加入高亮图片数组可播放动画)  */
- (UIImageView * _Nonnull (^)(NSArray<UIImage *> * ))hx_highlightedAnimationImages;
/** ImageView 动画播放时间*/
- (UIImageView * _Nonnull (^)(NSTimeInterval ))hx_animationDuration;
/** ImageView 动画播放重复次数*/
- (UIImageView * _Nonnull (^)(NSInteger ))hx_animationRepeatCount;

/** ImageView 是否允许交互*/
//UIView - on
- (UIImageView * _Nonnull (^)(BOOL ))hx_userInteractionEnabled;
/** ImageView 标识*/
- (UIImageView * _Nonnull (^)(NSInteger ))hx_tag;
/** ImageView 约束对齐方式(相对父类)*/
- (UIImageView * _Nonnull (^)(CGRect ))hx_frame;
/** ImageView 约束对齐方式(相对自己) */
- (UIImageView * _Nonnull (^)(CGRect ))hx_bounds;
/** ImageView 以中心为对齐方式约束*/
- (UIImageView * _Nonnull (^)(CGPoint ))hx_center;
/** ImageView背景颜色 */
- (UIImageView * _Nonnull (^)(UIColor * ))hx_backgroundColor;
/** ImageView 透明度*/
- (UIImageView * _Nonnull (^)(CGFloat ))hx_alpha;
/** ImageView 是否隐藏*/
- (UIImageView * _Nonnull (^)(BOOL ))hx_hidden;
/** ImageView 填充模式*/
- (UIImageView * _Nonnull (^)(UIViewContentMode ))hx_contentMode;
/** ImageView边框颜色 */
- (UIImageView * _Nonnull (^)(UIColor * ))hx_tintColor;

@end

@interface UITextField (Chain_hx)
/** TextField 文本内容 */
- (UITextField * _Nonnull (^)(NSString * ))hx_text;
/** TextField 文本富文本 */
- (UITextField * _Nonnull (^)(NSAttributedString * ))hx_attributedText;
/** TextField 文字颜色*/
- (UITextField * _Nonnull (^)(UIColor * ))hx_textColor;
/** TextField 文字大小*/
- (UITextField * _Nonnull (^)(UIFont * ))hx_font;
/** TextField  对齐方式*/
- (UITextField * _Nonnull (^)(NSTextAlignment ))hx_textAlignment;
/** TextField 边框样式*/
- (UITextField * _Nonnull (^)(UITextBorderStyle ))hx_borderStyle;
/** TextField  提示语设置文字大小颜色等*/
- (UITextField * _Nonnull (^)(NSDictionary<NSAttributedStringKey,id> * ))hx_defaultTextAttributes;
/** TextField 提示语 */
- (UITextField * _Nonnull (^)(NSString * ))hx_placeholder;
/** TextField提示语富文本 */
- (UITextField * _Nonnull (^)(NSAttributedString * ))hx_attributedPlaceholder;
/** TextField每次输入会把上一次的内容清空 */
- (UITextField * _Nonnull (^)(BOOL ))hx_clearsOnBeginEditing;
/** TextField 根据宽高自适应内容大小*/
- (UITextField * _Nonnull (^)(BOOL ))hx_adjustsFontSizeToFitWidth;
/** TextField 设置最小字体大小*/
- (UITextField * _Nonnull (^)(CGFloat ))hx_minimumFontSize;
/** TextField 背景图片*/
- (UITextField * _Nonnull (^)(UIImage * ))hx_background;
/** TextField 缺失背景(未知)*/
- (UITextField * _Nonnull (^)(UIImage * ))hx_disabledBackground;

/** TextField 是否允许交互*/
//UIView - on
- (UITextField * _Nonnull (^)(BOOL ))hx_userInteractionEnabled;
/** TextField标识 */
- (UITextField * _Nonnull (^)(NSInteger ))hx_tag;
/** TextField 约束位置(相对父类) */
- (UITextField * _Nonnull (^)(CGRect ))hx_frame;
/** TextField约束位置(相对自己) */
- (UITextField * _Nonnull (^)(CGRect ))hx_bounds;
/** TextField 以中心对齐方式约束*/
- (UITextField * _Nonnull (^)(CGPoint ))hx_center;
/** TextField 背景颜色*/
- (UITextField * _Nonnull (^)(UIColor * ))hx_backgroundColor;
/** TextField 透明度*/
- (UITextField * _Nonnull (^)(CGFloat ))hx_alpha;
/** TextField是否允许显示 */
- (UITextField * _Nonnull (^)(BOOL ))hx_hidden;
/** TextField 填充方式*/
- (UITextField * _Nonnull (^)(UIViewContentMode ))hx_contentMode;
/** TextField 描边颜色*/
- (UITextField * _Nonnull (^)(UIColor * ))hx_tintColor;

@end

@interface UITextView (Chain_hx)
/** TextView文本内容 */
- (UITextView * _Nonnull (^)(NSString * ))hx_text;
/** TextView 文本颜色*/
- (UITextView * _Nonnull (^)(UIColor * ))hx_textColor;
/** TextView 文本大小*/
- (UITextView * _Nonnull (^)(UIFont * ))hx_font;
/** TextView 文本对齐方式*/
- (UITextView * _Nonnull (^)(NSTextAlignment ))hx_textAlignment;
/** TextView是否允许编辑 */
- (UITextView * _Nonnull (^)(BOOL ))hx_editable;
/** TextView富文本 */
- (UITextView * _Nonnull (^)(NSAttributedString * ))hx_attributedText;
/** TextView是否允许编辑富文本 */
- (UITextView * _Nonnull (^)(BOOL ))hx_allowsEditingTextAttributes;

/** TextView是否允许交互 */
//UIView - on
- (UITextView * _Nonnull (^)(BOOL ))hx_userInteractionEnabled;
/** TextView标识 */
- (UITextView * _Nonnull (^)(NSInteger ))hx_tag;
/** TextView约束位置(相对父类) */
- (UITextView * _Nonnull (^)(CGRect ))hx_frame;
/** TextView 约束位置(相对自己) */
- (UITextView * _Nonnull (^)(CGRect ))hx_bounds;
/** TextView以中心对齐约束 */
- (UITextView * _Nonnull (^)(CGPoint ))hx_center;
/** TextView背景颜色 */
- (UITextView * _Nonnull (^)(UIColor * ))hx_backgroundColor;
/** TextView 透明度*/
- (UITextView * _Nonnull (^)(CGFloat ))hx_alpha;
/** TextView 是否隐藏*/
- (UITextView * _Nonnull (^)(BOOL ))hx_hidden;
/** TextView填充方式 */
- (UITextView * _Nonnull (^)(UIViewContentMode ))hx_contentMode;
/** TextView描边颜色 */
- (UITextView * _Nonnull (^)(UIColor * ))hx_tintColor;

@end

@interface UILabel (Chain_hx)
/** 文本内容 */
- (UILabel * _Nonnull (^)(NSString * _Nonnull))hx_text;
/** 文本大小 */
- (UILabel * _Nonnull (^)(UIFont * _Nonnull))hx_font;
/** 文本颜色 */
- (UILabel * _Nonnull (^)(UIColor * _Nonnull ))hx_textColor;
/** 文本阴影颜色 */
- (UILabel * _Nonnull (^)(UIColor * _Nonnull ))hx_shadowColor;
/** 文本阴影偏移度 */
- (UILabel * _Nonnull (^)(CGSize ))hx_shadowOffset;
/** 文本对齐方式 */
- (UILabel * _Nonnull (^)(NSTextAlignment ))hx_textAlignment;
/** 下划线模式 */
- (UILabel * _Nonnull (^)(NSLineBreakMode ))hx_lineBreakMode;
/** 文本富文本 */
- (UILabel * _Nonnull (^)(NSAttributedString * _Nonnull ))hx_attributedText;
/** 文本高亮颜色 */
- (UILabel * _Nonnull (^)(UIColor * _Nonnull ))hx_highlightedTextColor;
/** 文本高亮状态 */
- (UILabel * _Nonnull (^)(BOOL ))hx_highlighted;
/** 文本是否允许点击(YES变灰,NO常态) */
- (UILabel * _Nonnull (^)(BOOL ))hx_enabled;
/** 文本显示行数 */
- (UILabel * _Nonnull (^)(NSInteger ))hx_numberOfLines;
/** 文本根据长度自适应 */
- (UILabel * _Nonnull (^)(BOOL ))hx_adjustsFontSizeToFitWidth;
/** 线条对齐方式 */
- (UILabel * _Nonnull (^)(UIBaselineAdjustment ))hx_baselineAdjustment;


//UIView - on
/** 文本是否允许交互 */
- (UILabel * _Nonnull (^)(BOOL ))hx_userInteractionEnabled;
/** 文本标识 */
- (UILabel * _Nonnull (^)(NSInteger ))hx_tag;
/** 文本frame (相对屏幕)*/
- (UILabel * _Nonnull (^)(CGRect ))hx_frame;
/** 文本bounds (相对自己)*/
- (UILabel * _Nonnull (^)(CGRect ))hx_bounds;
/** 文本以中心对齐方式去设置 */
- (UILabel * _Nonnull (^)(CGPoint ))hx_center;
/** 文本背景颜色 */
- (UILabel * _Nonnull (^)(UIColor * ))hx_backgroundColor;
/** 文本透明度 */
- (UILabel * _Nonnull (^)(CGFloat ))hx_alpha;
/** 文本是否隐藏 */
- (UILabel * _Nonnull (^)(BOOL ))hx_hidden;
/** 文本填充方式(应用于图片比较多) */
- (UILabel * _Nonnull (^)(UIViewContentMode ))hx_contentMode;
/** 文本描边颜色*/
- (UILabel * _Nonnull (^)(UIColor * ))hx_tintColor;

@end

@interface UIButton (Chain_hx)
/** 按键边距 */
- (UIButton * _Nonnull (^)(UIEdgeInsets ))hx_contentEdgeInsets;
/** 按键文本边距 */
- (UIButton * _Nonnull (^)(UIEdgeInsets ))hx_titleEdgeInsets;
/** 按键图片边距 */
- (UIButton * _Nonnull (^)(UIEdgeInsets ))hx_imageEdgeInsets;
/** 按键文本 */
- (UIButton * _Nonnull (^)(NSString * ,UIControlState ))hx_title;
/** 按键文本颜色 */
- (UIButton * _Nonnull (^)(UIColor * ,UIControlState ))hx_titleColor;
/** 按键文本阴影颜色 */
- (UIButton * _Nonnull (^)(UIColor * ,UIControlState ))hx_titleShadowColor;
/** 按键图片颜色 */
- (UIButton * _Nonnull (^)(UIImage * ,UIControlState ))hx_image;
/** 按键背景图片 */
- (UIButton * _Nonnull (^)(UIImage * ,UIControlState ))hx_backgroundImage;
/** 按键富文本 */
- (UIButton * _Nonnull (^)(NSAttributedString * ,UIControlState ))hx_attributedTitle;

/** 按键是否允许交互 */
//UIView - on
- (UIButton * _Nonnull (^)(BOOL ))hx_userInteractionEnabled;
/** 按键标识 */
- (UIButton * _Nonnull (^)(NSInteger ))hx_tag;
/** 按键frame 约束位置(相对父类)*/
- (UIButton * _Nonnull (^)(CGRect ))hx_frame;
/** 按键bounds 约束位置(相对自己) */
- (UIButton * _Nonnull (^)(CGRect ))hx_bounds;
/** 按键以中心作为对齐方式 */
- (UIButton * _Nonnull (^)(CGPoint ))hx_center;
/** 按键背景颜色 */
- (UIButton * _Nonnull (^)(UIColor * ))hx_backgroundColor;
/** 按键透明度 */
- (UIButton * _Nonnull (^)(CGFloat ))hx_alpha;
/** 按键是否隐藏 */
- (UIButton * _Nonnull (^)(BOOL ))hx_hidden;
/** 按键填充方式 */
- (UIButton * _Nonnull (^)(UIViewContentMode ))hx_contentMode;
/** 按键描边颜色 */
- (UIButton * _Nonnull (^)(UIColor * ))hx_tintColor;

@end`在这里插入代码片`

这种写是参考简书上面的一篇文章的:https://www.jianshu.com/p/c2a061010b82
在这里插入图片描述
下面的这些文件数不同类的工具类而已,其实跟UI的链式布局没有关系的,只是方便自己的使用。
在这里插入图片描述

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-01-30 19:02:44  更:2022-01-30 19:04:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/28 5:31:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码