iOS
文章平均质量分 70
1奋斗的小鸟1
本人发表的博客有任何问题请联系
QQ:563699115
Telephone:18341266547
展开
-
3DES加密,java后台,安卓,iOS三端加密解密
一.HASH散列算法1.MD5算法不可逆128位或者64位串,byte数字长度就是16和8,一般表示是使用16进制来表示的话,1个byte转换成2个16bit,分别表示高地位,所以生成的字符串是16位或者是32位的,16位其实是从32位中的中间部分抽出来的。我们所说的密码多少位,是表示多少bit,转换成byte数组的话,就是除以8,但是如果输出16进制的话就是除以4转载 2016-05-26 11:42:15 · 866 阅读 · 0 评论 -
iOS开发之异常收集机制
在App delegate.中的didFinish中//异常信息收集 NSSetUncaughtExceptionHandler(&UncaughtExceptionHandler););定义UncaughtExceptionHandlervoid UncaughtExceptionHandler(NSException *原创 2016-07-12 18:44:05 · 429 阅读 · 0 评论 -
iOS开发之UIWebView那些事
UIWebView裹挟参数请求我们在实际开发中,总面临着这些那些的需求,比如让UIWebView裹挟参数进行请求显示。 CGRect rect = [[UIScreenmainScreen] bounds]; CGSize size = rect.size; CGFloat width = size.width; CGFloat原创 2016-05-26 16:29:35 · 356 阅读 · 0 评论 -
iOS开发之二维码扫描
二维码需要自带的库AVFoundation/AVFoundation.h创建对象AVCaptureSession *session;//开启摄像头if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {原创 2016-05-26 16:27:54 · 479 阅读 · 0 评论 -
iOS开发之改变图片大小
向凡神致敬~-(UIImage *)TransformtoSize:(CGSize)Newsize{ // 创建一个bitmap的context UIGraphicsBeginImageContext(Newsize); // 绘制改变大小的图片 [self drawInRect:CGRectMake(0, 0, Newsize.widt转载 2016-05-26 16:26:24 · 923 阅读 · 0 评论 -
iOS开发之生成本地二维码
向凡神致敬~第一步:使用cocoapods第三方库管理工具导入libqrencode第三方库注:libqrencode实际是UIImageView的分类第二步:创建一个QRCodeGenerator的类.h文件:#import #import @interface QRCodeGenerator转载 2016-05-26 16:23:55 · 413 阅读 · 0 评论 -
iOS开发之正则表达式
向凡神致敬~此篇博文共分为两个部分,第一部分为正则表达式元字符的基本介绍,第二部分为在iOS程序中正则表达式的使用一、正则表达式元字符元字符描述\将下一个字符标记符、或一个向后引用、或一个八进制转义符。例如,“\\n”匹配\n。“\n”匹配换行符。序列“\\”匹配“\”而“\(”则匹转载 2016-05-26 15:00:44 · 444 阅读 · 0 评论 -
iOS开发之类似安卓的Toast短暂提示框
向凡神致敬~在Android中具有确认提示框与短暂提示框Toast,但在iOS中只有确认提示框Alert并无类似于Android的短暂提示框Toast。注:使用此组件控制器需加入到UINavigationController中使用方法:[objc] view plain copy print?[[[转载 2016-05-26 14:58:41 · 2215 阅读 · 1 评论 -
iOS开发之提取本地通讯录数据
向凡神致敬~iOS中若需获取本地通讯录数据需在工程中导入以下库:AddressBook.framework获取本地通讯录数据示例程序如下:[objc] view plain copy print?#pragma mark - 获取手机所有联系人 - (void)obtainPhoneAllContact转载 2016-05-26 14:54:49 · 740 阅读 · 0 评论 -
iOS开发之JS与OC的混合开发
JS调用原生OC篇方式一第一种方式是用JS发起一个假的URL请求,然后利用UIWebView的代理方法拦截这次请求,然后再做相应的处理。我写了一个简单的HTML网页和一个btn点击事件用来与原生OC交互,HTML代码如下:html> header> metahttp-equiv="Content-Type"content=转载 2016-05-26 14:49:23 · 408 阅读 · 0 评论 -
iOS开发之CoreAnimation简介
Core Animation是直接作用在CALayer上的(并非UIView上)非常强大的跨Mac OS X和iOS平台的动画处理API,Core Animation的动画执行过程都是在后台操作的,不会阻塞主线程。核心动画继承结构核心动画继承结构注意:核心动画中的虚类不能使用,而应该使用他们子类中的实类。Core Animation的使用步骤如果是Xcode6之前的转载 2016-07-14 14:15:55 · 334 阅读 · 0 评论 -
iOS开发之Core Animation基本的使用方法
基本动画使用 CABasicAnimation,实现一个动画CABasicAnimation *animation = [CABasicAnimation animation];animation.keyPath = @"position.x";animation.fromValue = @77;animation.toValue = @455;animation.dura转载 2016-07-14 14:18:00 · 568 阅读 · 0 评论 -
iOS开发之Pop框架(二)
本周早些时候,Ole Begemann写了一个很棒的教程:“UIScrollView是如何工作的”。并且作了详细解释,他甚至从头开始创建了一个非常简单的滚动视图。 创建过程很简单:使用UIPanGestureRecognizer,然后改变边界的原点来响应拖拽手势的转化。 扩展Ole的自定义滚动视图,以包含UIScrollView内部惯性滚动似乎很自然,使用Facobook最转载 2016-07-14 15:09:20 · 1325 阅读 · 0 评论 -
iOS应用内支付(内购)
本文会给大家详细介绍iOS内购,这是本人16年5月底的开发过程,希望对看完此篇文章的人有所帮助。 本文基于XcodeVersion 7.3 (7D175)版本,手机是iPhone 6,9.3系统。 部分地方直接摘自网络,基本上是我的逻辑,省时省心省力。一. 创建测试App首先你需要登录 App的ItunesConnection,你会看到如下界面 简单的介绍一下这转载 2017-03-23 10:08:39 · 1056 阅读 · 0 评论 -
Runloop和Runtime区别
一.RunLoop: Runloop是事件接收和分发机制的一个实现。 Runloop提供了一种异步执行代码的机制,不能并行执行任务。 在主队列中,Main RunLoop直接配合任务的执行,负责处理UI事件、定时器以及其他内核相关事件。(1).RunLoop的主要目的:原创 2017-02-22 11:19:20 · 491 阅读 · 0 评论 -
RunLoop详解
不知道大家有没有想过这个问题,一个应用开始运行以后放在那里,如果不对它进行任何操作,这个应用就像静止了一样,不会自发的有任何动作发生,但是如果我们点击界面上的一个按钮,这个时候就会有对应的按钮响应事件发生。给我们的感觉就像应用一直处于随时待命的状态,在没人操作的时候它一直在休息,在让它干活的时候,它就能立刻响应。其实,这就是run loop的功劳。一、线程与run loop1.1转载 2017-02-22 11:17:31 · 404 阅读 · 0 评论 -
iOS开发之runtime详解
runtime 详解本文结构:简介runtime版本和平台与runtime交互runtime术语消息动态方法解析消息转发健壮的实例变量总结1、简介Cocoa的Objective-C语言可以在编译和链接的时候不知道类或者成员变量,只有在runtime(运行时)的转载 2017-02-22 10:57:04 · 520 阅读 · 0 评论 -
UIViewController生命周期
序言:loadView、viewDidLoad、viewDidAppear、initWithNibName、awakeFromNib等经常出现在UIViewController中的方法介绍。这些方法分别用来作哪些工作,换言之,创建自定义的View时代码放到以上哪个方法中。一个UIView的生命周期是怎样的。以上几个方法的调用顺序如何。通过IB和代码加载视图,有什么区别文章主要参考官原创 2016-12-01 16:47:39 · 478 阅读 · 0 评论 -
iOS开发之JSPatch动态替换OC代码
简介● 项目主页: https://github.com/bang590/JSPatch● 示例下载: https://github.com/ios122/ios122JSPatch 可以让你用 JavaScript 书写原生 iOS APP。只需在项目引入极小的引擎,就可以使用 JavaScript 调用任何 Objective-C 的原生接口,获得脚本语言的优势转载 2016-07-14 15:53:59 · 661 阅读 · 0 评论 -
iOS开发之ijkplayer视频直播
ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijkplayer, 即便以前从没有接触过, 按着下面做也可以集成成功!编辑:Bison投稿:jianshu_wl一. 下载ijkplayerijkplayer下载地址下转载 2016-07-14 15:38:44 · 581 阅读 · 0 评论 -
iOS开发之Pop框架(一)
Facebook开源了期待已久的动画框架Pop,该框架为本文中的iOS app 提供了强大的动画支持。 Pop 中用来定义动画的方法类似于 苹果的Core Animation API。不论你以前是否使用过Core Animation,学习并使用Pop开发一个基本的动画都非常容易。这是一个简单动画,是借助弹簧效果把一个视图从一个点移动到另一点。POPSpringA转载 2016-07-14 15:05:51 · 2804 阅读 · 0 评论 -
iOS开发之Pop框架(三)
Pop上手体验(i)Facebook一直为开发者提供自己的开源代码库非常令人感激。最新的一个是Pop,在Github上不到24小时就已经获得3500个星了(目前是将近6000个)。 (文中涉及动态图,可能会加载的慢,请耐心查看!) Facebook官方阐述: Pop是一个适用于iOS和OS X平台的可扩展动画引擎。除了基本的静态动画,Pop还转载 2016-07-14 15:15:36 · 40141 阅读 · 0 评论 -
iOS开发之NSURL
get 请求[objc] view plaincopy#pragma mark - GET登录 - (void)getLogon { // 1. URL NSString *urlStr = [NSString stringWithFormat:@"http://localhost/login.php?user原创 2016-05-26 14:47:53 · 338 阅读 · 0 评论 -
iOS开发之地图定位
地图1.导入本地库Xcode自带的地图,需要导入CoreLocation和MapKit本地库2.创建对象创建CLLocationManager和MKMapView对象并设置代理, 3.更新定位坐标 然后通过Manager定位坐标,request申请方法和startUpdating开始更新坐标,在manager的代理方法didUpdate中,取得原创 2016-05-26 14:45:41 · 522 阅读 · 0 评论 -
iOS开发之深复制浅复制
iOS开发中,对象拥有复制特性,必须实现NSCopying,NSMutableCopying协议,实现该协议的copyWithZone方法和mutableCopyWithZone方法深拷贝和浅拷贝的区别就在于copyWithZone方法的实现,浅拷贝代码如下:?12345678原创 2016-05-26 11:47:58 · 309 阅读 · 0 评论 -
iOS开发之UISegmentedControl实现分页切换
在我们做应用开发的时候,难免会需要那种切换的效果,如果直接下载三方库,可能你没有自己写的理解的那么透彻,所以这里我介绍一下如何用UISegmentedControl进行切换。有三个view,分别为view1、view2、view3,通过UISegmentedControl进行三个view的切换。@interface UIViewDemoViewController原创 2016-05-26 11:44:45 · 668 阅读 · 0 评论 -
iOS开发之计时器
iOS开发中,我们涉及到的计时器为3种,GCD计时器,CADisplayLink计时器,NSTimer计时器。GCD计时器特性:NSTimer有延迟,不是特别准确,所以如果要求特别高的情况下,我们可以用GCD计时器和CADisplayLink计时器;创建计时器dispatch_source_t timer 设置计时器dispatch_source原创 2016-05-26 11:40:40 · 578 阅读 · 0 评论 -
iOS开发之获取运营商和WIFI
下面是我们常用的一些获取手机信息的方法,大家可以看看。不过在目前的版本里面,很多手机信息已经获取不到了,因为苹果在这方面的保密性做得越来越严格。IMEI,IMSI,DeviceID,手机号码等我们都已经获取不到了,下面一些我们可能获取到的,也可能因为是私有API而导致审核被拒,大家在借鉴的时候要慎重。/// @brief 获取连接方式+ (NSString *)ge原创 2016-05-26 11:25:45 · 1153 阅读 · 0 评论 -
iOS开发之UIDevice等手机信息
UIDevice UIDevice提供了多种属性、类函数及状态通知,帮助我们全方位了解设备状况。从检测电池电量到定位设备与临近感应,UIDevice所做的工作就是为应用程序提供用户及设备的一些信息。UIDevice类还能够收集关于设备的各种具体细节,例如机型及iOS版本等。其中大部分属性都对开发工作具有积极的辅助作用。下面的代码简单的使用UIDevice获取手机属性。转载 2016-05-26 11:17:08 · 473 阅读 · 0 评论 -
iOS开发之获取手机型号
在我们开发过程中,难免会涉及到获取手机信息的一些需求,但是有些苹果提供的API是私有的,不能随意调用,否则审核无法通过,所以大家斟酌的使用吧。下面介绍一下获取设备详细型号的代码,目前更新到获取iPhone6s plus。大家需要注意,想粘贴这段代码需要引入"sys/utsname.h"库。// 需要#import "sys/utsname.h"+ (NSString*)原创 2016-05-26 11:10:07 · 666 阅读 · 0 评论 -
iOS开发之获取本地沙盒等基本路径
因为在我们开发的过程中,经常会需要对本地的一些文件或者数据库进行操作,所以我们经常需要获取一些基本的路径,所以在这里我收集了一些获取基本路径的方法与大家分享。沙盒里的文件夹包括Documents、Library、tmp。接下来我们来讲解如何获取Documents、Library、tmp的路径。获取沙盒根目录获取沙盒根目录,直接调用NSHomeDirectory():原创 2016-05-26 11:06:59 · 6426 阅读 · 0 评论 -
iOS开发之多线程了解
iOS系统中,据我所知,有三种开辟多线程的方法。下面给大家说明一下这三种多线程的区别和特点:其中需要注明一点,在升级到Xcode7之后,我们在viewDidLoad中,如果想要更新视图的UI界面,添加什么控件之类的,我们需要开辟一个线程,在线程中更新这个视图UI。NSTread其中NSThread贴近底层系统,所以应用并不广泛。较为常用的GCD,因为GCD虽然抽原创 2016-05-26 11:02:05 · 416 阅读 · 0 评论 -
iOS开发之检查APP版本更新
现在的AppStore商店中,很多APP都具备提示用户更新版本的功能,而在我刚开始做iOS开发的时候,无法绕开iOS审核的机制,所以曾经令我很困扰。今天刚刚开通CSDN博客,就把这个分享给还没有了解这方法的同学们。下面是我自己的注释代码,大家可以看一下,有问题的同学随时交流。/// @brief 获取到得最新版本号@property (nonatomic ,copy)原创 2016-05-26 10:53:12 · 448 阅读 · 0 评论 -
iOS开发之手势解锁详解
A.需求1.九宫格手势解锁2.使用了绘图和手势事件code source: https://github.com/hellovoidworld/GestureUnlockDemoB.实现使用按钮来处理每个圆点使用代码生成按钮取消按钮点击事件设置普通状态和选中状态的背景图片CGRectContainsPoint,移动到按钮范围内改变按钮为选中状态按钮的转载 2016-05-26 11:50:54 · 559 阅读 · 0 评论 -
iOS开发之渐变色的实现
向凡神致敬~/// @brief 创建一个CAGradientLayer对象用于放置需要渐变的颜色CAGradientLayer *gradient = [CAGradientLayer layer]; /// @brief 获取当前要设置颜色渐变的空间的bounds gradient.frame = self.view.bounds; /// @转载 2016-05-26 13:01:32 · 487 阅读 · 0 评论 -
iOS开发之NSUserDefault详解
我们平时总用到NSUserDefault来实现简单的本地存储,下面我们就深入了解一下NSUserDefault,还有很多我们没见过的地方。本文资料是我从网上了解搜集而来。NSUserDefaults适合存储轻量级的本地数据,一些简单的数据(NSString类型的)例如密码,网址等,NSUserDefaults肯定是首选,但是如果我们自定义了一个对象,对象保存的是一些信息,这原创 2016-05-26 13:20:36 · 2740 阅读 · 0 评论 -
iOS开发之屏幕截图
iOS屏幕截图的核心代码,以后会陆续更新+ (UIImage *) imageFromView: (UIView *) theView{// Draw a view’s contents into an image contextUIGraphicsBeginImageContext(theView.frame.size);CGContextRef co原创 2016-05-26 14:26:02 · 291 阅读 · 0 评论 -
iOS开发之证书类别
iOS开发证书类型区别苹果的证书繁锁复杂,制作管理相当麻烦,今天决定重置一个游戏项目中的所有证书,做了这么多次还是感觉很纠结,索性直接记录下来,日后你我他查阅都方便;首先得描述一下各个证书的定位,作用,这样在制作的时候心中有谱,对整个流程的把握也会准确一些;1、开发者证书(分为开发和发布两种,类型为ios Development,ios Distribution),这个是最原创 2016-05-26 14:21:39 · 657 阅读 · 0 评论 -
iOS开发之APP跳转传参
应用程序跳转1.在程序1的任意事件中添加NSString *url = @“MyUrl://”;[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];2.1.在程序2中,点击顶部项目,设置选项info 2.在最底下的URL Types中原创 2016-05-26 14:20:18 · 427 阅读 · 0 评论 -
iOS开发之AFNetworking上传
AFNetworking作为一个网络交互的三方库,它的功能非常丰富,除了我们常用的数据请求外,我们在网络上传的时候也需要注意一下,因为上传的时候如果不是字符串,那么其他的所有东西都需要转化成NSData数据进行上传,下面介绍一下代码。和取数据差不多的首先定义一个字典,用来存放参数NSDictionary* params = [NSDictionary dictionar原创 2016-05-26 13:13:38 · 407 阅读 · 0 评论