这里主要讲一些我在日常开发中用到的一些小的技巧,其实也算不上技巧吧,就是省去一些不必要的代码,或者有的小问题困扰你很久说不行在这里你能找到答案
iOS OC项目的pch文件使用
在项目中如果我们需要一些公共的引用,或者一些全局的宏 那我们经常在pch中设置好
具体怎么设置呢 在项目下新建一个pch文件
一般我会取名 项目名-PrefixHeader
在target——>Bulid Setting 中 设置 PrefixHeader
我的项目文件夹结构
$(SRCROOT)这个是指工程的根目录
找到这个pch文件就行 然后启动APP就会编译这个文件了
pch.h中
//
UITableView的Group样式下顶部空白处理
要给tableHeaderView赋一个高度不为0的view才能处理顶部留白
//分组列表头部空白处理
获取某个view的Controller
其实就是根据view的响应链,来查找viewcontroller
- (UIViewController *)viewController
清空NSUserDefaults的记录
方法一:是获取当前的app的bundleId NSUserDefaults中有方法根据bundleId清空记录
NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
方法二:获取所有存储在NSUserDefaults中的数据,因为是按照key-value形式存储,所以循环key就能够删除数据
- (void)clearDefaults{
GCD timer定时器的使用
这里的定时器,是一个每秒在主线程跑的一个方法
__block int countSecond = 30; //倒计时
计算文件大小
- (long long)fileSizeAtPath:(NSString *)path
计算文件夹大小
- (long long)folderSizeAtPath:(NSString *)path
向上取整和向下取整
floor(x)函数,是一个向下取整函数,是一个C函数 即是去不大于x的一个最大整数
给任何一个view设置一张图片
UIImage *image = [UIImage imageNamed:@"image"];
在UIView的扩展 快速修改frame
在iOS修改view的frame,我们经常需要写一大堆代码,来修改frame中的一个小属性,这里有一个方法,就是直接修改frame的每个值
新建一个category UIView+PPSFrame.h
#import <UIKit/UIKit.h>
在.m文件中设置各个属性
#import "UIView+Layout.h"