- 博客(56)
- 收藏
- 关注
转载 AES CBC加密
作者:中国小青年链接:https://www.jianshu.com/p/317c94a1a864來源:简书 前言:在我们开发中免不了和服务器做一些数据交互,在交互过程中走得都是http请求,这类请求不像https那样的安全所以就会在交互过程中做一些数据加密解密的事情,现在主流的加密是AES对称加密和RSA非对称加密下面给大家讲解下AES加密,非对称加密会过几天跟新。AES加密介...
2019-01-02 21:39:19 1734 1
转载 Objective-C Runtime 运行时之五:协议与分类
转自:http://southpeak.github.io/blog/2014/11/08/objective-c-runtime-yun-xing-shi-zhi-wu-:xie-yi-yu-fen-lei/Objective-C中的分类允许我们通过给一个类添加方法来扩充它(但是通过category不能添加新的实例变量),并且我们不需要访问类中的代码就可以做到。Objective
2015-09-16 19:40:49 513
转载 Objective-C Runtime 运行时之四:Method Swizzling
转自:http://southpeak.github.io/blog/2014/11/06/objective-c-runtime-yun-xing-shi-zhi-si-:method-swizzling/理解Method Swizzling是学习runtime机制的一个很好的机会。在此不多做整理,仅翻译由Mattt Thompson发表于nshipster的Method S
2015-09-16 19:38:09 592
转载 Objective-C Runtime 运行时之三:方法与消息
转自:http://southpeak.github.io/blog/2014/11/03/objective-c-runtime-yun-xing-shi-zhi-san-:fang-fa-yu-xiao-xi-zhuan-fa/前面我们讨论了Runtime中对类和对象的处理,及对成员变量与属性的处理。这一章,我们就要开始讨论Runtime中最有意思的一部分:消息处理机制。我
2015-09-16 19:36:23 512
转载 Objective-C Runtime 运行时之二:成员变量与属性
转自:http://southpeak.github.io/blog/2014/10/30/objective-c-runtime-yun-xing-shi-zhi-er-:cheng-yuan-bian-liang-yu-shu-xing/在前面一篇文章中,我们介绍了Runtime中与类和对象相关的内容,从这章开始,我们将讨论类实现细节相关的内容,主要包括类中成员变量,属性,方法,协议与
2015-09-16 19:34:26 437
转载 Objective-C Runtime 运行时之一:类与对象
原文出处:http://southpeak.github.io/blog/2014/10/25/objective-c-runtime-yun-xing-shi-zhi-lei-yu-dui-xiang/Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理。这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或
2015-09-16 19:31:35 538
转载 javascript立即执行函数写法
原文地址:http://dengo.org/archives/1004javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法也是对javascript语言特性更进一步的深入理解。( function(){…} )()和( function (){…} () )是两种javascript立即执行函数的
2015-08-18 09:18:15 441
原创 iOS开发中如何向svn服务器commit添加.a文件
当我们在使用类似versions等svn的客户端管理工具时,由于.a文件如libWeiboSDK.a等不像一般的程序能自动提交到versions中,所以需要在终端中做一下操作,具体步骤如下所示:1.开启终端,并且打开到到自己存放从svn服务器上checkout下来的项目所在的文件夹,例如我的项目名称是xyb,存放路径放在桌面的文件夹上/Users/pofabs/Desktop/IOS_XYB/
2015-08-12 09:57:52 975
转载 快速排序
原文地址:http://blog.csdn.net/morewindows/article/details/6684558由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。
2015-08-12 09:24:33 501
转载 cocoapods安装与使用
在iOS开发中势必会用到一些第三方依赖库,比如大家都熟悉的ASIHttpRequest、AFNetworking、JSONKit等。使用这些第三方类库能极大的方便项目的开发,但是,集成这些依赖库需要我们手动去配置,例如集成ASIHttpRequest库时除了加入源码以外还需要手动去添加一些系统框架,比如CFNetwork、MobileCoreServices等,如果这些第三方库发生了更新,还需要手
2015-06-24 13:39:46 373
原创 iOS版本号,build号获取,根据字符串格式长短动态计算uilabel的size等
获得version版本号[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"][[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString”];获得build号[[[NSBundle
2015-06-16 13:59:38 565
转载 iOS 动画详解
概览转自:http://www.cnblogs.com/kenshincui/p/3972100.html#autoid-3-1-0在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看到iOS中如何使用图层精简非交互式绘图,如何通过核心动画创建基础动画、关键帧动画、动画组、转场动画,如何通过UIView的装饰方法对这些动
2015-05-31 23:27:25 440
转载 iOS调试技巧
转自Joywii的博客,原文:Four Tips for Debugging in XCode Like a Bro 1.Enable NSZombie Objects(开启僵尸对象)Enable NSZombie Objects可能是整个Xcode开发环境中最有用的调试技巧。这个技巧非常非常容易追踪到重复释放的问题。该技巧会以非常简洁的方式打印指出重复释放的类和该类
2015-05-20 17:32:58 414
转载 objective-c中self.xxx和_xxx的区别与用法
关于@synthesis、变量、属性、属性名前面下划线的问题那个下划线只是为了方便区别全局变量和本地变量,或者防止变量重名,只是一种编程风格,实际上对代码没有实质影响,更无法替代@synthesize语句的功能。你只要记住一个真理,凡是在头文件里面定义了@property的变量,必定要@synthesize。第二:字符或变量前面有双下划线的:__st
2015-05-10 20:12:27 1274
原创 nonatomic,assign,copy等的解析与运用时机
什么是property?property是一种代码生成机制,能够生成不同类型的getter/setter函数,特别是如果你想要用点(.)操作符号来存取变量的话,你就能必须使用property。 如何使用?用法如:@property (attribute1,attribute2) float value;这些attribute包括:readonly
2015-04-23 21:14:42 513
转载 ios中的#include,#import和@class
1. 一般来说,导入objective c的头文件时用#import,包含c/c++头文件时用#include。2. #import 确定一个文件只能被导入一次,这使你在递归包含中不会出现问题。 所以,#import比起#include的好处就是不会引起交叉编译。#import && #class: 1. import会包含这个类的所有信息,包括实体变量和方法(.h文件中
2015-04-23 20:23:19 554
转载 oc中的深拷贝和浅拷贝
浅拷贝浅拷贝就是对内存地址的复制,让目标对象指针和源对象指向同一片内存空间。如:12char* str = (char*)malloc(100);char* str2 = str;浅拷贝只是对对象的简单拷贝,让几个对象共用一片内存,当内存销毁的时候,指向这片内存的几个指针需要重新定义才可
2015-04-21 23:33:21 661
转载 ios中的kvo模式使用实例
本文出自:http://blog.csdn.net/yuquan0821/article/details/6646400一,概述KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。二,使用方法系统框架已经支持KVO,所
2015-04-21 23:11:34 470
转载 ios开发中app优化
这篇文章来自iOS Tutorial Team 成员 Marcelo Fabri, 他是 Movile 的一个iOS开发者. Check out his personal website or follow him on Twitter.原文地址 当我们开发iOS应用时,好的性能对我们的App来说是很重要的。你的用户也希望如此,但是如果你的app表现的反应迟钝或者很
2015-04-19 10:13:17 671
原创 core data 入门(2)多对多映射与常见的开发注意事项
首先需要注意的一点是,当你每次数据库表的结构发生变化的时候,需要先到原先创建该数据库的沙盒或者文件夹中手动删除对应的数据库文件,否则,当你再次打开数据库连接的时候,会因为表的数据结构不一样而打开失败。 本次使用两个实体类person与book,他们是多对多的映射关系,他们对应的添加实体如下图所示
2015-03-21 12:36:09 621
转载 core data 入门
简介 Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象。在此数据操作期间,我们不需要编写任何SQL语句,这个有点类似于著名的Hibernate持久化框架,不过功能肯定是没有Hibernate强大的。简单地用下图描述下它的作用:
2015-03-21 11:58:22 465
转载 copy,retain,weak,strong等的总结
copy:建立一个索引计数为1的对象,然后释放旧对象 对NSString对NSString 它指出,在赋值时使用传入值的一份拷贝。拷贝工作由copy方法执行,此属性只对那些实行了NSCopying协议的对象类型有效。更深入的讨论,请参考“复制”部分。retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1对其他NSObject和其子类对参数进行re
2015-03-20 10:28:02 441
原创 xcode6下百度地图开发注意事项
1、首先进入http://developer.baidu.com/map/index.php下载ios版本的百度地图sdk,我此次下载的版本是BaiduMap_IOSSDK_v2.6.0。 2、合并静态库:解压下载下来的zip文件,找到BaiduMap_IOSSDK_v2.6.0_Lib文件夹,拷贝Release-iphoneos和Release-iphonesimulator文
2015-03-19 17:26:16 614
原创 ios中对sqlite3的使用小结
sqlite3中字段虽然不区分数据类型的,但是它的数据类型还是分为了以下几种:integer,text,float,real,blob为了开发的需要我们首先需要创建一个person类,用来对应即将创建的数据库中的person表。person类的.h和.m文件分别如下person.h内容:import @interface Person : NSObject/** * 工厂
2015-03-15 10:40:41 451
转载 NSAssert和NSParameterAssert
NSAssert()只是一个宏,用于开发阶段调试程序中的Bug,通过为NSAssert()传递条件表达式来断定是否属于Bug,满足条件返回真值,程序继续运行,如果返回假值,则抛出异常,并切可以自定义异常描述。NSAssert()是这样定义的:#define NSAssert(condition, desc)condition是条件表达式,值为YES或NO;desc为异常描述,通常为
2015-03-11 10:02:00 452
原创 IOS开发arc工程中使用非arc文件
Automatic Reference Counting (ARC) 是一个编译期的技术,利用此技术可以简化Objective-C编程在内存管理方面的工作量。因此arc逐渐成为主流开发方式。在arc的工程中要想使用非arc的文件,例如使用判断网络连接状态的Reachability.h文件。需要做以下操作,否则会报错:1、点击工程,选择targets2、选中Build Pha
2015-03-11 09:22:22 510
转载 NSNotificationCenter 通知传值
通知 是在跳转控制器之间常用的传值代理方式,除了代理模式,通知更方便、便捷,一个简单的Demo实现通知的跳转传值.输入所要发送的信息 ,同时将label的值通过button方法调用传递,- (IBAction)buttonClick:(id)sender { //添加 字典,将label的值通过key值设置传递 NSDictionary *d
2015-03-04 10:51:10 545
转载 从一个子视图或者一个View中刷新其他UITableView
从一个子视图或者一个View中刷新其他UITableView被问到了一个问题:如何从一个子视图或者一个View中刷新其他UITableView,常规的写法可能是这样的TestTVC*testTVC =[[TestTVC alloc] init];[testTVC loadData];这时你可以看看UITableView是不会被刷新的,起码cellForRow
2015-03-04 10:24:08 569
原创 ios中常用的裁剪图片方法小结
一、使用Quartaz2d的画图功能裁剪。1.例如截取图片上的一个圆:- (UIImage *)cutCircleBg{ UIImage *baseImage = [UIImage imageNamed:@"LuckyBaseBackground"]; // Quartz2D // 核心对象:上下文(保存图片) // 1.开始上下文(
2015-03-03 21:40:29 2853
原创 ios6与ios7及之后适配的常见问题
1、Ios7之后的一大特点是导航栏不再占据状态栏的高度,而是在状态栏的基础上另外占用了一个44的高度,实为64,所以在自定义的导航栏中,适配导航栏时,一个简便的方法是ios7之前的版本使用高度为44的图片设置为导航栏的背景,而ios7则使用64的图片设置背景。2、ios6与ios7之后的控制器view的适配 下图是IOS7未适配之前的view,此图去掉了自定义的UITabBarC
2015-02-28 09:07:58 722
原创 关于copy形式下block的内存泄漏问题
在分析这个问题之前,所以我们先列出下面这个图,并且理清它们的关系: 这里的setting控制器是指:ILSettingViewController,它在.h文件中定义了一个数组变量@interface ILSettingViewController: UIviewViewController { NSMutableArray *_allGroups; // 所有的
2015-02-11 16:09:30 462
转载 OC的runtime系列二——解析与运用
要理解runtime,首先我们要了解类和对象的内部结构,下面将首先介绍下OC中类与对象的结构层次。 一、首先,从 runtime.h头文件中找到对 class 与 object 的定义/// An opaque type that represents an Objective-C class.typedef struct objc_class *Class;/// R
2015-02-10 17:16:41 509
转载 Objective-C的runtime详解
本文是我在 Alt Tech Talks: London 上关于 Objective-C runtime的演讲总结,如果你对Objective-C runtime感兴趣的话,应该看看这篇文章,特别是文章中的链接,一定会受益匪浅。 什么是Objective-C runtime?简单来说,Objective-C runtime是一个实现Objective-C语言的C库。对象可以用C语言
2015-02-10 15:12:16 494
原创 苹果原生态的图片上传实例
虽然现在第三方框架已经足够强大,但是对于原生态的东西多了解一下也是很精彩的。图片上传的本质大部分是将上传的内容提交到服务器的一个页面的form表单中,而表单提交的参数我们通常可以用firefox浏览器来抓取,抓取成功后再根据这些参数设置IOS端代码的相关参数。一下就是原生的上传图片的例子#pragma mark - 上传图像- (void)uploadImage{ /
2015-02-05 11:33:26 597
转载 ios中摄像头/相册获取图片,压缩图片,上传服务器方法总结
iphone中图像通常存储在4个地方【相册、应用程序包、沙盒、Internet】,通过这4个源,我们就可以存取应用图片。 相册 iphone的相册包含摄像头胶卷+用户计算机同步的部分照片。用户可以通过UIImagePickerController类提供的交互对话框来从相册中选择图像。但是,注意:相册中的图片机器路径无法直接从应用程序访问,只能通过终端用户去选择和使用相册图片
2015-02-03 15:53:21 410
转载 IOS开发block的分析与运用系列
本文内容全部来自召唤攻城狮的博客:http://my.oschina.net/leejan97,转载过来只是为了方便学习运用,在此说声谢谢。(一)Block很简单,就像delegate的简化版代理设计模式对于iOS开发的人来说肯定很熟悉了,代理delegate就是委托另一个对象来帮忙完成一件事情,为什么要委托别人来做呢,这其实是MVC设计模式中的模块分工问题,例如View对
2015-01-28 12:59:06 621
原创 IOS多视图控制器管理的总结与回顾(一)
一、视图控制器常见的切换方式。 1、Tabbar选项卡:以UITabbarController为容器,以平行的方式管理试图控制器。 1.1、UITabbarController常用的属性:title---标题,image---图像(需要打开alpha通道,32*32以下,png格式),badgeValue---右上角的图标,viewControllers---所有的子视图控制
2015-01-26 14:36:41 665
原创 xmpp框架搭建以及linker command failed with exit code 1 (use -v to see invocation)问题的解决
首先进入xmpp官网下载xmpp框架后,将其导入工程中,完成后目录如下 导入所需的框架:CFNetWork.frameWork, security.frameWork, libxml2.dylib,libresolv.dylib然后指定如下编译选择:在Header Search Paths中加入/usr/include/libxml2,如下图
2015-01-06 11:22:56 1113
原创 ios数据源方法中一点细节的处理记录
在含有数据源的控制器中,当创建某个UIVIew或者是其他类的对象时,通常要考虑if(obj==nil){//创建对象的代码}
2014-12-29 15:21:31 645
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人