HCTools 1.0.5

HCTools 1.0.5

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2017年8月

suhc 维护。



HCTools 1.0.5

在详细介绍这个框架的具体内容之前,先简要介绍一下这个框架的由来。转眼从事iOS开发也有几年了,在工作中也遇到过各种各样的坑,写过无数的demo,也总结了不少经验,但这些都只是自己和身边的朋友在我们公司的项目中使用,传播方式仅限于QQ、微信,从未想过公开分享。后来的感悟是,之前明明已经写过的很多功能,后来再次使用时却发现很多都找不到了,还得重新编写,因此就有了将这些平时总结的技巧和功能集中起来的想法,让我们和朋友们一起进行完善,在需要的时候可以直接使用,不用担心丢失,并且经过众多高手,而不仅仅是自己的力量进行完善,可以让这些功能更加强大和健壮,这就是这个项目的意义和起源。

1.目录结构

目录结构

  • HCTools.h: 所有头文件的集合,如果需要使用该框架中的所有功能,进入该文件即可
  • Categorys: 一些常用控件的功能扩展,比如NSString分类中包含检测手机号和身份证号的方法,UIView中包含针对快速设置和获取frame的各个值得方法,UItextView分类中包含直接添加placeholder的方法等等,具体可以查看各个头文件
  • CustomViews: 封装的一些常用控件,比如针对UIButton的二次封装,扩展系统UIButton只能图片在左边,文字在右边的不足,方便实现图片在上,文字在下以及图片在右,文字在左边等常用需求,还包含设置富文本的工具等
  • Headers里面放置了各个模块的头文件集,使用场景是如果你不想使用该框架的所有功能,仅仅想要使用其中的分类,那么你只需要引用HCCategorys.h,而不必引入HCTools.h

2.集成方法

$ pod 'HCTools'

3.部分代码及其对应的效果展示

//设置富文本label
HCAttributeLabel *label = [[HCAttributeLabel alloc]initWithFrame:CGRectMake(100, 100, 360, 120)];
label.text = @"<富文本效果展示>:我们都有一个[test],名字叫<中国>!❤️我<中华>,因为我们\\[都是\\]\\<炎黄子孙\\>\n<以下是自定义Button效果展示>";
label.highlightFont = [UIFont systemFontOfSize:18];
label.textColor = [UIColor greenColor];
label.highlightColor = [UIColor redColor];
label.backgroundColor = [UIColor blueColor];
label.font = [UIFont systemFontOfSize:16];
label.lineSpacing = 10;
label.center = self.view.center;
label.textAlignment = NSTextAlignmentCenter;
label.HighlightAction = ^(NSString *string){
NSLog(@"string:%@",string);
};
[self.view addSubview:label];

//创建一个图片在左,文字在右边,图片和文字距离为10,上边距离label为20的Button
HCCustomButton *button1 = [HCCustomButton customButtonWithType:HCCustomButtonTypeDefault];
[button1 setTitle:@"图片在左,文字在右" forState:UIControlStateNormal];
button1.padding = 10;
[button1 setImage:[UIImage imageNamed:@"test"] forState:UIControlStateNormal];
button1.backgroundColor = [UIColor blueColor];
button1.top = label.bottom + 20;
button1.centerX = self.view.centerX;
[self.view addSubview:button1];

//创建一个图片在右,文字在左,图片和文字距离为10,上边距离button1为20的Button
HCCustomButton *button2 = [HCCustomButton customButtonWithType:HCCustomButtonTypeImageOnRight];
[button2 setTitle:@"图片在右,文字在左" forState:UIControlStateNormal];
button2.padding = 10;
[button2 setImage:[UIImage imageNamed:@"test"] forState:UIControlStateNormal];
button2.backgroundColor = [UIColor blueColor];
button2.top = button1.bottom + 20;
button2.centerX = self.view.centerX;
[self.view addSubview:button2];

//创建一个图片在上,文字在下,图片和文字距离为10,上边距离button2为20的Button
HCCustomButton *button3 = [HCCustomButton customButtonWithType:HCCustomButtonTypeImageOnTop];
[button3 setTitle:@"图片在上,文字在下" forState:UIControlStateNormal];
button3.padding = 10;
[button3 setImage:[UIImage imageNamed:@"test"] forState:UIControlStateNormal];
button3.backgroundColor = [UIColor blueColor];
button3.top = button2.bottom + 20;
[self.view addSubview:button3];
button3.centerX = self.view.centerX;

//创建一个图片在下,文字在上,图片和文字距离为10,上边距离button3为40的Button
HCCustomButton *button4 = [HCCustomButton customButtonWithType:HCCustomButtonTypeImageOnBottom];
[button4 setTitle:@"图片在下,文字在上" forState:UIControlStateNormal];
button4.padding = 10;
[button4 setImage:[UIImage imageNamed:@"test"] forState:UIControlStateNormal];
button4.backgroundColor = [UIColor blueColor];
button4.top = button3.bottom + 20;
button4.centerX = self.view.centerX;
[self.view addSubview:button4];

部分效果