博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS之常用分类frame、button、
阅读量:4291 次
发布时间:2019-05-27

本文共 6778 字,大约阅读时间需要 22 分钟。

*******frame#import 
@interface UIView (FLExtension)@property (nonatomic) CGFloat originX;@property (nonatomic) CGFloat originY;@property (nonatomic) CGFloat left;@property (nonatomic) CGFloat top;@property (nonatomic) CGFloat right;@property (nonatomic) CGFloat bottom;@property (nonatomic) CGFloat width;@property (nonatomic) CGFloat height;@property (nonatomic) CGFloat centerX;@property (nonatomic) CGFloat centerY;@property (nonatomic) CGPoint origin;@property (nonatomic) CGSize size;@end***#import "UIView+FLExtension.h"@implementation UIView (FLExtension)- (void)setOriginX:(CGFloat)originX { CGRect frame = self.frame; frame.origin.x = originX; self.frame =frame;}- (void)setOriginY:(CGFloat)originY { CGRect frame = self.frame; frame.origin.y= originY; self.frame =frame;}- (CGFloat)originX { return self.frame.origin.x;}- (CGFloat)originY { return self.frame.origin.y;}-(void)setWidth:(CGFloat)width{ CGRect frame = self.frame; frame.size.width = width; self.frame =frame; }-(void)setHeight:(CGFloat)height{ CGRect frame = self.frame; frame.size.height = height; self.frame =frame;}-(CGFloat)width{ return self.frame.size.width; }-(CGFloat)height{ return self.frame.size.height; }-(void)setSize:(CGSize)size{ CGRect frame = self.frame; frame.size = size; self.frame =frame; }-(CGSize)size{ return self.frame.size; }-(void)setOrigin:(CGPoint)origin{ CGRect frame =self.frame; frame.origin =origin; self.frame = frame;}-(CGPoint)origin{ return self.frame.origin; }- (CGFloat)left { return self.frame.origin.x;}- (void)setLeft:(CGFloat)x { CGRect frame = self.frame; frame.origin.x = x; self.frame = frame;}- (CGFloat)top { return self.frame.origin.y;}- (void)setTop:(CGFloat)y { CGRect frame = self.frame; frame.origin.y = y; self.frame = frame;}- (CGFloat)right { return self.frame.origin.x + self.frame.size.width;}- (void)setRight:(CGFloat)right { CGRect frame = self.frame; frame.origin.x = right - frame.size.width; self.frame = frame;}- (CGFloat)bottom { return self.frame.origin.y + self.frame.size.height;}- (void)setBottom:(CGFloat)bottom { CGRect frame = self.frame; frame.origin.y = bottom - frame.size.height; self.frame = frame;}- (CGFloat)centerX { return self.center.x;}- (void)setCenterX:(CGFloat)centerX { self.center = CGPointMake(centerX, self.center.y);}- (CGFloat)centerY { return self.center.y;}- (void)setCenterY:(CGFloat)centerY { self.center = CGPointMake(self.center.x, centerY);}@end

 

 

****BUtton

#import 
NS_ASSUME_NONNULL_BEGIN@interface UIButton (Hximbasebtn)+(UIButton *)createBtnWithTitle:(NSString *)title image:(NSString *)imageStr frame:(CGRect) frame target:(id)target method:(SEL)method;@endNS_ASSUME_NONNULL_END***#import "UIButton+Hximbasebtn.h"@implementation UIButton (Hximbasebtn)+(UIButton *)createBtnWithTitle:(NSString *)title image:(NSString *)imageStr frame:(CGRect) frame target:(id)target method:(SEL)method{ UIButton *btn=[UIButton buttonWithType:UIButtonTypeCustom]; btn.frame=frame; [btn setTitle:title forState:UIControlStateNormal]; [btn setTitleColor:[UIColor blueColor] forState:UIControlStateNormal]; [btn addTarget:target action:method forControlEvents:UIControlEventTouchUpInside]; return btn;}@end

 

*****导航按钮返回和右边按钮

#import 
NS_ASSUME_NONNULL_BEGIN@interface UIBarButtonItem (LeftBarbuttonItem)+(NSArray *)backBtn:(SEL)action target:(id)target image:(NSString *)imageStr title:(NSString *)titleStr;//返回按钮+(NSArray *)addrightBtn:(SEL)action target:(id)target image:(NSString *)imageStr title:(NSString *)titleStr;//导航右边按钮@endNS_ASSUME_NONNULL_END***//导航上按钮#import "UIBarButtonItem+LeftBarbuttonItem.h"@implementation UIBarButtonItem (LeftBarbuttonItem)//添加导航返回按钮+(NSArray *)backBtn:(SEL)action target:(id)target image:(NSString *)imageStr title:(NSString *)titleStr{ UIButton *backBtn=[[UIButton alloc]initWithFrame:CGRectMake(0,0,80,44)]; [backBtn setTitleColor:[UIColor blackColor]forState:UIControlStateNormal]; backBtn.titleLabel.font=[UIFont systemFontOfSize:12]; UIBarButtonItem *backbtn=[[UIBarButtonItem alloc]initWithCustomView:backBtn]; UIBarButtonItem *fixBtn=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:self action:nil]; if(titleStr && ![titleStr isEqualToString:@""]){ [backBtn setTitle:titleStr forState:UIControlStateNormal]; } if(imageStr && ![imageStr isEqualToString:@""]){ fixBtn.width=-30; [backBtn setImage:[UIImage imageNamed:imageStr]forState:UIControlStateNormal]; } if(target && action){ [backBtn addTarget:target action:action forControlEvents:UIControlEventTouchUpInside]; } //兼容IOS11 CGFloat sysv= [[[UIDevice currentDevice]systemVersion]floatValue]; if(sysv>=11.0){ backBtn.contentHorizontalAlignment =UIControlContentHorizontalAlignmentLeft; [backBtn setImageEdgeInsets:UIEdgeInsetsMake(0,0,0,0)]; } NSArray *btnArr=@[fixBtn,backbtn]; return btnArr; }//添加导航右侧按钮+(NSArray *)addrightBtn:(SEL)action target:(id)target image:(NSString *)imageStr title:(NSString *)titleStr{ UIButton *rightBtn=[[UIButton alloc]initWithFrame:CGRectMake(0,0,80,44)]; [rightBtn setTitleColor:[UIColor blueColor]forState:UIControlStateNormal]; [rightBtn.titleLabel setFont:[UIFont systemFontOfSize:17 weight:UIFontWeightThin]]; UIBarButtonItem *rbtn=[[UIBarButtonItem alloc]initWithCustomView:rightBtn]; UIBarButtonItem *fixBtn=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil]; if(titleStr && ![titleStr isEqualToString:@""]){ [rightBtn setTitle:titleStr forState:UIControlStateNormal]; fixBtn.width=0; } if(imageStr && ![imageStr isEqualToString:@""]){ [rightBtn setImage:[UIImage imageNamed:imageStr]forState:UIControlStateNormal]; fixBtn.width=-20; } if(target && action){ [rightBtn addTarget:target action:action forControlEvents:UIControlEventTouchUpInside]; } //兼容IOS11 CGFloat sysv= [[[UIDevice currentDevice]systemVersion]floatValue]; if(sysv>=11.0){ rightBtn.contentHorizontalAlignment =UIControlContentHorizontalAlignmentRight; [rightBtn setTitleEdgeInsets:UIEdgeInsetsMake(0,0,0,0)]; } NSArray *rightBtnArr=@[fixBtn,rbtn]; return rightBtnArr; }@end

 

转载地址:http://kqmgi.baihongyu.com/

你可能感兴趣的文章
Javascript单例模式概念与实例
查看>>
SQL NULL 函数
查看>>
多例设计模式
查看>>
WebView的JavaScript与本地代码三种交互方式
查看>>
WebView的JavaScript与本地代码三种交互方式
查看>>
Android Studio里面配置Tesseract
查看>>
深入浅出JavaScript之this
查看>>
Android include标签的使用注意事项
查看>>
final成员变量和final局部变量
查看>>
Android数据加密之异或加密算法
查看>>
greenDao好的示例网址
查看>>
SDK无埋点技术在百分点的探索和实践
查看>>
Android自定义控件--仿安全卫士中的一键加速
查看>>
微信小程序快速入门
查看>>
Android EditText被软键盘遮盖处理
查看>>
JavaScript 中变量、作用域和内存问题的学习
查看>>
Android Tools Attributes,让布局设计所见即所得
查看>>
FlipDotView——磁翻点阵显示效果
查看>>
浅析回话技术之Session和Cookie
查看>>
20道经典Java面试基础题
查看>>