Objective - C - 添加类目 - NSDate
1.类目为系统内部的类或者是没有源代码的类添加方法,不有添加实例变量
2.添加的方法会成为原类的一部分,子类照样可以使用
3.类目的文件名为原类名+文件名
4.既可以添加实例方法,也可以添加类方法
Xcode工程下;
1 command + N 新建
2 选择 Objectiove-C File
3 File: 设置新建的类的名字; File Type:Category(选择) Class:(选择具体要创建的类名)
//关于日期的一些设置:
//NSDate 这个类 是Foundation框架中表示日期的类
//获取当前时间,打印信息包含,年月日 时分秒 以及时区。零时区时间
NSDate *nowDate = [NSDate date];
NSLog(@"nowDate is %@",nowDate);
//获取明天当天的时间
NSDate *tomorrow = [NSDate dateWithTimeInterval:24*60*60 sinceDate:nowDate];
NSLog(@"tomorrow is %@",tomorrow);
NSTimeInterval seconds = [nowDate timeIntervalSinceDate:tomorrow];
NSLog(@"%.2f",seconds);//一年一共的秒数
NSTimeInterval time = [nowDate timeIntervalSince1970];
NSLog(@"%.2f",time);
//NSDateComponentsFormatter 创建日期格式类,作用是 将NSDate对象 与 NSString 对象 互转
//1 创建一个 日期格式的对象
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
//2 设置转化格式
/*
1 y 年
2 M 月
3 d 日
4 H 24小时 h(am/pm 12小时)
5 m 分
6 s 秒
*/
[dateFormatter setDateFormat:@"yyyy-mm-dd HH:mm:ss"];
//使用日期格式对象 完成转换
//1 将日期对象转化为字符串对象
NSString *str = [dateFormatter stringFromDate:nowDate];//日期型转化为字符型
NSLog(@"str is %@",str);
NSLog(@"----1");
//2 将字符串转化为对象
NSDate *date = [dateFormatter dateFromString:@"2016-01-01 11:11:33"];
NSLog(@"date is %@",date);
//此方法是把 日期类型的数据转化为 字符串类型
+ (NSString *)stringWithDate:(NSDate *)date formatter:(NSString *)formatter{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:formatter];//设置日期格式
NSString *string = [dateFormatter stringFromDate:date];//日期型转化为字符型
return string;
}
//此方法是把字符串类型的数据 转化为日期类型的数据
+ (NSDate *)dateWithDateStringT:(NSString *)string{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//必须有的步骤创建格式
NSDate *date = [dateFormatter dateFromString:string];
return date;
}
//字符串转化为日期,并且字 符串的格式 可以灵活使用 在外部写
+ (NSDate *)dateWithDateString:(NSString *)string formatter:(NSString *)formatter{ //类方法
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:formatter];//必须有的步骤..灵活的使用
NSDate *date = [dateFormatter dateFromString:string];
return date;
}
Objective - C - 添加类目 - NSDate的更多相关文章
- Runtime学习与使用(一):为UITextField添加类目实现被键盘遮住后视图上移,点击空白回收键盘
OC中类目无法直接添加属性,可以通过runtime实现在类目中添加属性. 在学习的过程中,试着为UITextField添加了一个类目,实现了当TextField被键盘遮住时视图上移的功能,顺便也添加了 ...
- ECshop网点程序优化-后台添加类目自动选择上次父类目并计算Sort Order
如果在ECshop后台批量添加过大量类目的人都能体会到是多么的不方便(这点还是要说一下ECshop的产品经理,细节上还是要多注意),每次添加都需要在几百个类目里面找到要添加的父类目也是一个麻烦事,比如 ...
- iOS类目、延展和协议
类目:为已知的类增加新的方法:注意:类目里面只能写方法,不能写声明和属性,所以,类目不能作为接口来用 1.类目无法向已有类中添加实例变量.2.如果类目中的方法和已有类中的方法名称冲突时,类目中的方法优 ...
- objective-c 类目(Category)和延展(Extension)
类目的基本概念: 如果有封装好的一个类,随着程序功能的增加,需要在类中增加一个方法,那我们就不必在那个类中做修改或者再定义一个子类,只需要在用到那个方法时添加一个该类的类目即可. 1.在类目定义的方法 ...
- 使用runtime关联对象将视图添加到视图的类目里
//get方法 - (RJCircularLoaderView*)rj_circularLoaderView { RJCircularLoaderView *loaderView = objc_get ...
- 01 《i》控制字体大小 v-for循环绑定类名 v-bind 结合三目运算 动态添加类
1==>控制字体图标的大小用 font-size:16px; <i class="el-icon-arrow-left right-show-aside-icon"&g ...
- Objective-C中的类目,延展,协议
Objective-C中的类目(Category),延展(Extension),协议(Protocol)这些名词看起来挺牛的,瞬间感觉OC好高大上.在其他OOP语言中就没见过这些名词,刚看到这三个名词 ...
- OC中协议, 类目, 时间, 延展, 属性
只有继承和协议需要引IMPORT "头文件"; 必须接受marryprotocol协议, id<marryprotocol>基于类型的限定, 才能给实例变量赋值 @pr ...
- iOS -类目,延展,协议
1.类目 类目就是为已存在的类添加新的方法.但是不能添加实例变量.比如系统的类,我们看不到他的.m文件,所以没有办法用直接添加方法的方式去实现. @interface NSMutableArray ( ...
随机推荐
- 安卓,支付宝app登录时,提示 服务器安全证书已过期或不可信任,请问怎么解决
安卓,支付宝app登录时,提示 服务器安全证书已过期或不可信任,请问怎么解决 请把手机时间调成当前时间.
- oracle 职业学习指引
风哥 它是阿里巴巴造出的概念.其本意是,在阿里巴巴的IT架构中,去掉IBM的小型机.Oracle数据库.EMC存储设备,代之以自己在开源软件基础上开发的系统. 思科.IBM.谷歌.高通.英特尔.苹果. ...
- HTMLParser使用
htmlparser[1] 是一个纯的java写的html(标准通用标记语言下的一个应用)解析的库,它不依赖于其它的java库文件,主要用于改造或提取html.它能超高速解析html,而且不会出错.现 ...
- 6个强大的AngularJS扩展应用
本文链接:http://www.codeceo.com/article/6-angularjs-extension.html本文作者:码农网 – 小峰 AngularJS现在非常热门,是Google推 ...
- [PHP] - Laravel - CSRF token禁用方法
前文 CSRF攻击和漏洞的参考文章: http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html Laravel默认是开启了CSRF功能, ...
- winform基本控件的使用2(用户登录界面的设计)
首先还是通过例子来讲解,这次的实验主要是使用messageBox的使用方法,关于messageBox的使用方法在我的博客里面有相关的转载,请自己查看,下面说一下实验要求. 功能要求:模拟一个用户登陆的 ...
- 集群工具ansible使用方法
ansible简介 ansible是与puppet.saltstack类似的集群管理工具,其优点是仅需要ssh和Python即可使用,而不像puppet.saltstack那样都需要客户端.与pupp ...
- IOS零碎技术整理(3)-获取wifi列表
1. 该功能实现基于MobileApple80211框架来进行开发,而目前该框架成为了私有框架,其中的API均为私有API. 如果使用这些API可能导致应用不能上app store或者ios版本升 ...
- mybatis实战教程(mybatis in action)之三:实现数据的增删改查
前面已经讲到用接口的方式编程.这种方式,要注意的一个地方就是.在User.xml 的配置文件中,mapper namespace="com.yihaomen.mybatis.inter.I ...
- js嵌套对象相等比较的一种方法 (原创)
做前端开发经常会遇到比较js对象是否相等的情况, 或者说其它问题往往会归结到这个问题上来:比如对象数组的去重复. 网上看到过很多例子, 但是基本上都是那种比较简单的对象结构, 而复杂的对象结构,比如对 ...