自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 Swift对CALayer的使用

对calayer的探索

2023-08-09 20:50:47 131

原创 Swift 对于指针的使用

对swift中指针的探索 待

2023-08-09 20:21:41 60

原创 获取名字拼音首字母转换大写排序

//排序- (void)sequenceWithArray:(NSArray *)nameArray{    self.nameDic = [NSMutableDictionary dictionary];    for (FriendModel *model in nameArray) {        NSString *name = model.teacher_name ?:...

2018-09-04 13:05:34 893

原创 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 215

原创 UNUserNotificationCenter 与 UILocalNotification

UNUserNotificationCenter (iOS10.0)    if (NSClassFromString(@"UNUserNotificationCenter")) { // ios 10        // 设置触发时间        UNTimeIntervalNotificationTrigger *trigger = [UNTimeIntervalNotifica...

2018-09-04 12:50:09 1132

原创 点击离线推送 直接打开调用方法 以及 userinfo

调用方法- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions//获取离线推送的userinfo- (void)launchOptionWith:(NSDictionary *)launchOptions{    NSDi...

2018-09-04 12:45:42 592

原创 关于字符中含有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 339

原创 weak 和 assign 的不同点

weak 策略在属性所指的对象遭到摧毁时,系统会将weak 修饰的属性对象的指针指向nil,在OC 给nil 发消息是不会有什么问题的;如果使用 assign策略在属性所指的对象遭到摧毁时,属性对象指针还指向原来的对象,由于对象已经被销毁,这时候就产生了野指针,如果这时候在给此对象发送消息,很容造成程序奔溃assigin可以用于修饰非 OC对象,而weak

2016-11-23 23:03:05 196

原创 ARC下的内存泄漏

1.循环引用会导致内存泄露2.Objective-C 对象与 CoreFoundation对象进行桥接的时候如果管理不当也会造成内存泄露3.CoreFoundation中的对象不受 ARC管理,需要开发者手动释放

2016-11-23 23:01:38 166

原创 sqlite 锁定的问题

1.设置数据库锁定的处理函数int sqlite3_busy_handler(sqlite3*, int(*)(void*,int),void*);1.设定锁定时的等待时间int sqlite3_busy_timeout(sqlite3*, 60);

2016-11-23 22:56:55 490

原创 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 196

原创 sip 是什么

• SIP(Session Initiation Protocol),会话发起协议• SIP是建立VOIP连接的IETF 标准,IETF是全球互联网最具权威的技术标准化组织• 所谓VOIP,就是网络电话,直接用互联网打电话,不用耗手机话费

2016-11-23 22:52:50 1266

原创 把程序自己关掉和程序进入后台,远程推送的 区别

1. 关掉后不执行任何代码,不能处理事件2. 应用程序进入后台状态不久后转入挂起状态。在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除。只有当用户再次运行此应用,应用才会从挂起状态唤醒,代码得以继续执行3.或者进入后台时开启多任务状态,保留在内存中,这样就可以执行系统允许的动作4.远程推送是由远程服务器上的程序发送到APNS,再由APNS把消息推送至设备上的程序

2016-11-23 22:46:04 489

原创 我们说的obc 是动态运行时语言是什么意思?

简单来说,运行时机制使我们直到运行时才去决定一个对象的类别,以及调用该类别对象指定方法。 多态:不同对象以自己的方式响应相同的消息的能力叫做多态。意思就是假设生物类(life)都用有一个相同的方法-eat; 那人类属于生物,猪也属于生物,都继承了life后,实现各自的eat,但是调用是我们只需调用各自的eat方法。 也就是不同的对象以自己的方式响应了相同的消息(响应了eat这个选择器)。 因此

2016-11-23 22:23:32 1041

原创 怎样防止指针的越界使用问题?

必须让指针指向一个有效的内存地址 1 防止数组越界 2 防止向一块内存中拷贝过多的内容 3 防止使用空指针  4 防止改变 const 修改的指针  5 防止改变指向静态存储区的内容  6 防止两次释放一个指针 7 防止使用野指针.

2016-11-23 22:21:58 4657

原创 RunLoop 与 Runtime

一.RunLoop:       Runloop是事件接收和分发机制的一个实现。       Runloop提供了一种异步执行代码的机制,不能并行执行任务。       在主队列中,Main RunLoop直接配合任务的执行,负责处理UI事件、定时器以及其他内核相关事件。(1).RunLoop的主要目的:

2016-11-23 22:18:43 271

原创 runtime

runtime 用来干什么呢??用在那些地方呢?怎么用呢? runtime是属于OC的底层, 可以进行一些非常底层的操作(用OC是无法现实的, 不好实现)在程序运行过程中, 动态创建一个类(比如KVO的底层实现)在程序运行过程中, 动态地为某个类添加属性\方法, 修改属性值\方法遍历一个类的所有成员变量(属性)\所有方法      Objective

2016-11-23 22:04:43 167

原创 SVPProgressHUD 与 MBProgressHUD

MBProgressHUD、SVProgressHUD基本使用方法https://github.com/jdg/MBProgressHUDhttps://github.com/TransitApp/SVProgressHUD1.MBProgressHUD先导入MBProgressHUD.h .m导入工程,声明MBProgressHUDDelegate

2016-11-16 00:36:57 1354

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除