- 博客(19)
- 收藏
- 关注
原创 获取名字拼音首字母转换大写排序
//排序- (void)sequenceWithArray:(NSArray *)nameArray{ self.nameDic = [NSMutableDictionary dictionary]; for (FriendModel *model in nameArray) { NSString *name = model.teacher_name ?:...
2018-09-04 13:05:34
945
原创 UiView 获取关于fram属性
#import <UIKit/UIKit.h> @interface UIView (Frame) @property (nonatomic,assign) CGSize size;@property (nonatomic,assign) CGFloat x;@property (nonatomic,assign) CGFloat y;@property (...
2018-09-04 12:53:17
252
原创 UNUserNotificationCenter 与 UILocalNotification
UNUserNotificationCenter (iOS10.0) if (NSClassFromString(@"UNUserNotificationCenter")) { // ios 10 // 设置触发时间 UNTimeIntervalNotificationTrigger *trigger = [UNTimeIntervalNotifica...
2018-09-04 12:50:09
1175
原创 点击离线推送 直接打开调用方法 以及 userinfo
调用方法- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions//获取离线推送的userinfo- (void)launchOptionWith:(NSDictionary *)launchOptions{ NSDi...
2018-09-04 12:45:42
642
原创 关于字符中含有url的判断以及处理
- (BOOL)isURL:(NSString *)url {//直接判断 if(url.length < 1) return NO; if (url.length>4 && [[url substringToIndex:4] isEqualToString:@"www."]) { url = [NSString ...
2018-09-04 12:42:47
374
原创 weak 和 assign 的不同点
weak 策略在属性所指的对象遭到摧毁时,系统会将weak 修饰的属性对象的指针指向nil,在OC 给nil 发消息是不会有什么问题的;如果使用 assign策略在属性所指的对象遭到摧毁时,属性对象指针还指向原来的对象,由于对象已经被销毁,这时候就产生了野指针,如果这时候在给此对象发送消息,很容造成程序奔溃assigin可以用于修饰非 OC对象,而weak
2016-11-23 23:03:05
232
原创 ARC下的内存泄漏
1.循环引用会导致内存泄露2.Objective-C 对象与 CoreFoundation对象进行桥接的时候如果管理不当也会造成内存泄露3.CoreFoundation中的对象不受 ARC管理,需要开发者手动释放
2016-11-23 23:01:38
197
原创 sqlite 锁定的问题
1.设置数据库锁定的处理函数int sqlite3_busy_handler(sqlite3*, int(*)(void*,int),void*);1.设定锁定时的等待时间int sqlite3_busy_timeout(sqlite3*, 60);
2016-11-23 22:56:55
527
原创 AFN 与 ASI 的区别
1. AFN基于NSURL,ASI基于底层的CFNetwork框架,因此ASI的性能优于AFN2.AFN采取block的方式处理请求,ASI最初采取delegate的方式处理请求,后面也增加了block的方式3. AFN只封装了一些常用功能,满足基本需求,直接忽略了很多扩展功能,比如没有封装同步请求;ASI提供的功能较多,预留了各种接口和工具供开发者自行扩展4.AFN直接解析服务器返回
2016-11-23 22:54:14
230
原创 sip 是什么
• SIP(Session Initiation Protocol),会话发起协议• SIP是建立VOIP连接的IETF 标准,IETF是全球互联网最具权威的技术标准化组织• 所谓VOIP,就是网络电话,直接用互联网打电话,不用耗手机话费
2016-11-23 22:52:50
1334
原创 把程序自己关掉和程序进入后台,远程推送的 区别
1. 关掉后不执行任何代码,不能处理事件2. 应用程序进入后台状态不久后转入挂起状态。在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除。只有当用户再次运行此应用,应用才会从挂起状态唤醒,代码得以继续执行3.或者进入后台时开启多任务状态,保留在内存中,这样就可以执行系统允许的动作4.远程推送是由远程服务器上的程序发送到APNS,再由APNS把消息推送至设备上的程序
2016-11-23 22:46:04
526
原创 我们说的obc 是动态运行时语言是什么意思?
简单来说,运行时机制使我们直到运行时才去决定一个对象的类别,以及调用该类别对象指定方法。 多态:不同对象以自己的方式响应相同的消息的能力叫做多态。意思就是假设生物类(life)都用有一个相同的方法-eat; 那人类属于生物,猪也属于生物,都继承了life后,实现各自的eat,但是调用是我们只需调用各自的eat方法。 也就是不同的对象以自己的方式响应了相同的消息(响应了eat这个选择器)。 因此
2016-11-23 22:23:32
1099
原创 怎样防止指针的越界使用问题?
必须让指针指向一个有效的内存地址 1 防止数组越界 2 防止向一块内存中拷贝过多的内容 3 防止使用空指针 4 防止改变 const 修改的指针 5 防止改变指向静态存储区的内容 6 防止两次释放一个指针 7 防止使用野指针.
2016-11-23 22:21:58
4770
原创 RunLoop 与 Runtime
一.RunLoop: Runloop是事件接收和分发机制的一个实现。 Runloop提供了一种异步执行代码的机制,不能并行执行任务。 在主队列中,Main RunLoop直接配合任务的执行,负责处理UI事件、定时器以及其他内核相关事件。(1).RunLoop的主要目的:
2016-11-23 22:18:43
308
原创 runtime
runtime 用来干什么呢??用在那些地方呢?怎么用呢? runtime是属于OC的底层, 可以进行一些非常底层的操作(用OC是无法现实的, 不好实现)在程序运行过程中, 动态创建一个类(比如KVO的底层实现)在程序运行过程中, 动态地为某个类添加属性\方法, 修改属性值\方法遍历一个类的所有成员变量(属性)\所有方法 Objective
2016-11-23 22:04:43
189
原创 SVPProgressHUD 与 MBProgressHUD
MBProgressHUD、SVProgressHUD基本使用方法https://github.com/jdg/MBProgressHUDhttps://github.com/TransitApp/SVProgressHUD1.MBProgressHUD先导入MBProgressHUD.h .m导入工程,声明MBProgressHUDDelegate
2016-11-16 00:36:57
1409
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人