- 博客(21)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
转载 【iOS开发】深入理解Tagged Pointer
前言在2013年9月,苹果推出了iPhone5s,与此同时,iPhone5s配备了首个采用64位架构的A7双核处理器,为了节省内存和提高执行效率,苹果提出了Tagged Pointer的概念。对于64位程序,引入Tagged Pointer后,相关逻辑能减少一半的内存占用,以及3倍的访问速度提升,100倍的创建、销毁速度提升。本文从Tagged Pointer试图解决的问题入手,带领读者理解Tagg
2016-06-29 17:25:56 619
原创 【iOS开发】strong和copy的区别
Question description:我们经常在给一个类定义property时,会考虑到修饰符strong和copy,通常情况下NSArray和NSString,最好使用copy。But why?这是为了防止赋值给它的是可变的数据,如果可变的数据发生了变化,那么该property也会发生变化。代码示例:// 定义一个Student类@interface Student : NSObject@p
2016-06-23 16:02:19 3263
转载 【iOS开发】Git详解教程(三)
Git使用基础篇Git详解之一 Git起步Git详解之二 Git基础Git详解之三 Git分支Git详解之四 服务器上的GitGit详解之五 分布式GitGit详解之六 Git内部原理
2016-06-21 16:02:11 545
转载 【iOS开发】适配器模式与观察者模式
何为适配器模式?适配器模式,可以这么说,用于连接两种不同种类的对象,使其毫无问题地协同工作。有时它也称为包装器。其思想相当简单,适配器实现客户端所要的某种接口的行为,同时,它又连接到另一个具有完全不同接口与行为的对象。一边是客户端懂得如何使用的目标接口,另一边是客户端一无所知的被适配者。适配器站在两者之间,适配器的主要作用是把被适配者的行为传递给管道另一端的客户端。基本上有两种实现适配器的方式。第一
2016-06-21 15:31:52 1142
原创 【iOS开发】AFN用POST, 参数出现这种乱码问题("æµè","å¨ä¸èµ·")
开发中遇到一个用AFNetworking,发送post请求时候,后端收到的数据出现乱码问题(“测è”,”在一起”)。以下有种解决方法。具体请求代码:NSString *urlStr = [NSString stringWithFormat:@"%@/image/saveWorkList",kNEWIP]; NSString *token = [IHFMAccountData
2016-06-17 11:51:23 7411
原创 【iOS开发】NSDictionary 判空处理
NSDictionary字典 判空处理+ (BOOL)isNullToDictionary:(NSDictionary *)dict{ if (dict != nil && ![dict isKindOfClass:[NSNull class]] && dict.count != 0){ return NO; }else{ return YES; }
2016-06-15 14:25:07 3370
原创 【iOS开发】Foreign famous blogs
国外著名blogshttps://www.quora.com/What-are-awesome-iOS-dev-blogshttp://cocoawithlove.com/ - Arguably the best iOS Blog by Matt Galaghar. Matt’s way of doing things is nothing short of masterful.http://ios
2016-06-14 14:00:51 639
原创 【iOS开发】AFNetwork 2.0在请求时报错code=-1016 和 3840
在进行网络请求时出现-1016 是因为只支持text/json,application/json,text/javascript你可以添加text/html 一劳永逸的方法是 在AFURLResponseSerialization.h里面搜索self.acceptableContentTypes然后 在里面 添加@”text/html”,@”text/plain”这样就可以解决-1016的错误了但是
2016-06-13 16:13:58 910
翻译 【iOS开发】事件处理之响应链(二)
事件传递:响应链当你设计你的应用程序,很可能想要得到事件的动态响应。例如,可能会出现一个触摸,有多个对象响应,因此你必须要决定是哪个对象要响应和处理此触摸事件。当用户生成的事件发生时,UIKit中创建包含处理该事件所需要的信息的事件对象。然后,它会在事件对象主动应用程序的事件队列。为触摸事件时,该对象是一组包装在触摸的UIEvent对象。对于运动事件,该事件对象取决于您所使用的框架和什么类型的运动事
2016-06-08 16:42:55 2092
翻译 【iOS开发】事件处理之手势识别(一)
手势识别手势识别将低级别事件处理代码转换成更高一级的行动。它们是对连接至一个视图,它允许,以便向操作进行响应的控制的方式做对象。手势识别解释触摸以确定它们是否对应于特定的手势,诸如滑动,挤压或转动。如果他们认识到自己指定的姿态,他们发送一个动作消息给目标对象。目标对象通常是视图的视图控制器,如图其中响应于所述姿态图1-1。这种设计模式是既强大又简单; 您可以动态地确定哪个视图被响应,你可以添加手势识
2016-06-07 13:18:32 6732
原创 【iOS开发】HTTP请求错误码 ? CodeType
NS_ENUM(NSInteger){ NSURLErrorUnknown = -1, NSURLErrorCancelled = -999, NSURLErrorBadURL = -1000, NSURLErrorTimedOut = -1001, NSURLError
2016-06-03 14:41:24 6823
原创 【iOS开发】NSString字符串最全判空方法
1、NSString字符串 判空处理+ (NSString *)isNullToString:(id)string{ if ([string isEqual:@"NULL"] || [string isKindOfClass:[NSNull class]] || [string isEqual:[NSNull null]] || [string isEqual:NULL] || [[st
2016-06-03 14:30:58 5553 1
原创 【iOS开发】字典(NSDictionary)和JSON字符串(NSString)之间互转
1. 字典转Json字符串+ (NSString*)convertToJSONData:(id)infoDict{ NSError *error; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:infoDict
2016-06-03 14:08:42 32404 4
原创 【iOS开发】Gitlab教程 (一)
一 、gitLab 创建工程Project name : 工程名字起一个,最好和项目相关;Namespace : 你自己的gitLab工作空间,默认就好;Description : 描述,随便写。Visibility Level : 可见度,一般是选Private。二、创建成功 拷贝gitLab仓库,HTTP地址 git地址:http://192.168.10.120/c
2016-06-03 12:01:02 3522
原创 【iOS开发】初识runtime
// 运行时runtime获取一个控件全部私有方法API- (void)runtimeGetPrivateMethods{ unsigned int outCount2; Method *pMethod = class_copyMethodList([UIPickerView class], &outCount2); // 循环获取方法的名字 for (int i
2016-06-03 10:02:54 564
转载 【iOS开发】Xcode提高编译速度
提高XCode编译时使用的线程数[plain] view plain copy 在CODE上查看代码片派生到我的代码片defaults write com.apple.Xcode PBXNumberOfParallelBuildSubtasks 4 XCode默认使用与CPU核数相同的线程来进行编译,但由于编译过程中的IO操作往往比CPU运算要多,因此适当的提升线程数可以在一定程度上加快编译速度
2016-06-02 22:45:01 1648
转载 【算法】排序
一.选择排序算法:算法基本原理:一次选定数组中的每一个数,记下当前位置并假设它是从当前位置开始后面数中的最小数min=i,从这个数的下一个数开始扫描直到最后一个数,并记录下最小数的位置min,扫描结束后如果min不等于i,说明假设错误,否则交换min与i位置上数。算法实现:#include <stdio.h>//选择排序,如果第一个数字小于后面的则向后移动,依次类推该排序时不稳定的,时间复杂度是
2016-06-02 18:13:49 567
转载 【iOS开发】Mac上的抓包工具Charles
一、下载先到它的官网http://www.charlesproxy.com/可下载到最新版本,这个下载有点慢,我已经将它放到网盘中了:http://pan.baidu.com/s/1gdu0S4V这个是3.9.3版本的,下载下来,安装就不多说了,很easy….打开界面: 二、破解不过这个收费的,那么接下来就开始破解吧,其实破解很简单就是替换一个文件就可以了,可以在网上搜:Charles3.9.3破
2016-06-02 13:12:23 810
Xcode12.1支持iOS14.2真机包
2020-11-09
php rename() 失败问题
2017-01-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人