自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (5)
  • 收藏
  • 关注

原创 使用xib导致的小错误

[_tableView registerNib:[UINib nibWithNibName:@"TMOrderDetailTableViewCell"bundle:nil] forCellReuseIdentifier:@"TMOrderDetailTableViewCell"];TMOrderDetailTableViewCell * cell=[self.table...

2016-03-30 10:21:28 276

转载 UIView加阴影

效果图: 以下代码实现:第一个图片的代码[cpp] view plain copy//加阴影--      _imageView.layer.shadowColor = [UIColor blackColor].CGColor;//shadowColor阴影颜色       _imageView.layer.shadowOffset = CGSizeMake(4,4);...

2016-03-28 19:32:23 276

转载 iOS 生成二维码

iOS7之后,可以使用原生的CIFilter创建二维码,但是生成的二维码只有黑白,而且大小不好控制,找了一下资料,发现解决的方法,使二维码透明背景,自定义颜色,还能加上阴影效果,方法很简单,直接调用即可,效果如下:Demo地址:https://github.com/yourtion/Demo_CustomQRCode首先是二维码的生成,使用CIFilter很简单,直接传入生

2016-03-28 13:46:46 330

转载 解决XCode安装插件后插件不能使用的问题

下面是上网查的方法,综合了一下,亲测原因:苹果要求加入UUID证书从而保证插件的稳定性。解决方法:一、查看Xcode的UUID在终端执行 defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID拷贝选中的字符串。1、打开xcode插件所在的目录

2016-03-25 19:06:49 995

原创 Swift Any和AnyObject类型

Any和AnyObject的类型转换 Swift为不确定类型提供了两种特殊类型别名:AnyObject可以代表任何class类型的实例。Any可以表示任何类型,除了方法类型(function types)。注意:只有当你明确的需要它的行为和功能时才使用Any和AnyObject

2016-03-22 20:27:40 1213

转载 Swift之 ? , !, as

Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错:var stringValue : String //error: variable 'stringValue' used before being initialized//let hashVa

2016-03-22 19:41:10 255

转载 iOS代理设计模式

在项目中我们经常会用到代理的设计模式,这是iOS中一种消息回传的方式。iOS中消息回传方式在iOS中有很多种消息传递方式,这里先简单介绍一下各种消息回传方式。 通知:在iOS中由通知中心进行消息接收和消息广播,是一种一对多的消息传递方式。 代理:是一种通用的设计模式,iOS中对代理支持的很好,由代理对象、委托者、协议三部分组成。 block:iOS4.0中引入的一种回调方法,可以将回调处理代码直接写在block代码块中,看起来逻辑清晰代码整齐。 target ac

2016-03-19 09:30:17 484

转载 addChildViewController

View Controller中可以添加多个sub view,在需要的时候显示出来;可以通过viewController(parent)中可以添加多个child viewController;来控制页面中的sub view,降低代码耦合度;通过切换,可以显示不同的view;,替代之前的addSubView的管理    //在parent view control

2016-03-18 13:07:52 197

原创 桶排序 --- 排序算法6

首先出场的是我们的主人公小哼,上面这个可爱的娃就是啦。期末考试完了老师要将同学们的分数按照从高到低排序。小哼的班上只有5个同学,这5个同学分别考了5分、3分、5分、2分和8分,哎,考得真是惨不忍睹(满分是10分)。接下来将分数进行从大到小排序,排序后是8 5 5 3 2。你有没有什么好方法编写一段程序,让计算机随机读入5个数然后将这5个数从大到小输出?请先想一想,至少想15分钟再往下看吧(*^__

2016-03-13 11:02:22 222

原创 快速排序法

今天介绍快速排序,这也是在实际中最常用的一种排序算法,速度快,效率高。就像名字一样,快速排序是最优秀的一种排序算法。思想快速排序采用的思想是分治思想。快速排序是找出一个元素(理论上可以随便找一个)作为基准(pivot),然后对数组进行分区操作,使基准左边元素的值都不大于基准值,基准右边的元素值 都不小于基准值,如此作为基准的元素调整到排序后的正确位置。递归快速排序,将其他n

2016-03-13 10:59:07 4324 2

转载 MagicRecord使用

本篇内容讲解的是MagicRecord的使用,是对CoreData的深度封装,原文地址:http://www.raywenderlich.com/56879/magicalrecord-tutorial-ios 欢迎大家指正,谢谢!CoreData作为Mac OS 和IOS开发数据持久化和用户数据检索的不可缺少的一部分已经好几年了。为了使API对开发者更容易使用,也为了App的整体

2016-03-12 22:05:43 403

转载 RunLoop -- 下

原文(有删减,有添加)RunLoop 是 iOS 和 OS X 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。RunLoop 的概念一般来讲,一个线程一次只能执行一个任务,执行完成后线程就会退出。如...

2016-03-12 19:44:08 233

转载 oc swift 混编

2015年3月起我们着手用Objective C开发Skyscanner TravelPro应用。几个月后Swift 2.0发布时,我们开始慢慢采用Swift。8个月之后--100%的新代码都是用Swift写的。所有这些工作都没有重写现有的,运行良好的,健壮的、经过测试的Objective-C代码--这样做已经没有什么意义了。市面上有很多论述如何决定是否要将Swift应用在新项目中的资料,

2016-03-12 18:53:22 650

转载 device token 和 UDID

先简单介绍下push的机制客户端通过(void)registerForRemoteNotificationTypes:(UIRemoteNotificationType)types这个函数向APNs(Apple Push Service)注册push,types可标明接收的push的类型,声音,数字等。(void)application:(UIApplica

2016-03-12 17:39:27 1873

转载 iOS UIView自带动画和核心动画

就两种,UIView自带动画和核心动画(Core Animation)一、UIView自带动画(UIKit框架中)        注意:只有当UIView的以下属性改变时才能产生动画效果,且这些动画效果都是平面性的(二维的),基于手机屏幕的平面,主要有“平移(位置改变,沿x轴、Y轴或同时改变)”、“缩放(view大小改变,宽高)”、“旋转(只有沿Z轴,即垂直于屏幕的轴,旋转平行于屏

2016-03-12 17:10:58 685

转载 didReceiveMemoryWarining 处理

根据网上的说法进行总结:iOS的UIViewController 类给我们提供了处理内存不足的接口。在iOS 3.0 之前,当系统的内存不足时,UIViewController的didReceiveMemoryWarining 方法会被调用,我们可以在didReceiveMemoryWarining 方法里释放掉部分暂时不用的资源。    从iOS3.0 开始,

2016-03-12 15:17:39 280

原创 iOS重绘机制drawRect

iOS的绘图操作是在UIView类的drawRect方法中完成的,所以如果我们要想在一个UIView中绘图,需要写一个扩展UIView 的类,并重写drawRect方法,在这里进行绘图操作,程序会自动调用此方法进行绘图。下面先说明一下绘图,比如,你想绘制一个方块,你需要写一个类来扩展UIView并在drawRect方法中填入如下代码:- (void)drawRect:(CGRect)rec...

2016-03-12 14:20:49 865

转载 沙盒机制

第一、什么是沙盒IOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒第二、保存内容所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等第三、作用iOS沙盒为程序运行提供了很好的安全保障第四、目录1、Documents目录:这个目录用于存储用户数据或其它应该定期备份的信息,苹果建议将程序中建立的或在程序中

2016-03-12 10:31:30 530

转载 懒加载

懒加载,又称为延迟加载。说的通俗一点,就是在开发中,当程序中需要利用的资源时。在程序启动的时候不加载资源,只有在运行当需要一些资源时,再去加载这些资源。我们知道iOS设备的内存有限,如果在程序在启动后就一次性加载将来会用到的所有资源,那么就有可能会耗尽iOS设备的内存。这些资源例如大量数据,图片,音频等等下面举个例子:1> 定义控件属性,注意:属性必须是strong的,示例

2016-03-12 10:29:40 211

转载 app生命周期

对于iOS应用程序,关键的是要知道你的应用程序是否正在前台或后台运行。由于系统资源在iOS 设备上较为有限,一个应用程序必须在后台与前台有不同的行为。操作系统也会限制你的应用程序在后台的运行,以提高电池寿命,并提高用户与前台应用程序的体 验。当应用程序在前台和后台之间切换时,操作系统将会通知您的应用程序。你可以通过这些通知来修改你的应用程序的行为。当你的应用程序在前台活动时,系统会发送触摸

2016-03-12 10:27:39 459

原创 viewcontroller生命周期

一、结构按结构可以对iOS的所有ViewController分成两类:1、主要用于展示内容的ViewController,这种ViewController主要用于为用户展示内容,并与用户交互,如UITableViewController,UIViewController。2、用于控制和显示其他ViewController的ViewController。这种ViewController一般都...

2016-03-12 10:26:35 311

原创 RunLoop -- 上

不知道大家有没有想过这个问题,一个应用开始运行以后放在那里,如果不对它进行任何操作,这个应用就像静止了一样,不会自发的有任何动作发生,但是如果我们点击界面上的一个按钮,这个时候就会有对应的按钮响应事件发生。给我们的感觉就像应用一直处于随时待命的状态,在没人操作的时候它一直在休息,在让它干活的时候,它就能立刻响应。其实,这就是run loop的功劳。一、线程与run loop1.0 runl...

2016-03-12 10:24:39 347

转载 iOS多线程,入门使用扫盲

在这篇文章中,整理一下 iOS 开发中几种多线程方案,以及其使用方法和注意事项。当然也会给出几种多线程的案例,在实际使用中感受它们的区别。OK,let's roll!概述在 iOS 中其实目前有 4 套多线程方案,他们分别是:Pthreads NSThread GCD NSOperation & NSOperationQueue所以接下来,我会一一讲解这些方案的使...

2016-03-12 10:22:59 394

转载 iOS中事件响应链和传递链

运用的前提是掌握 掌握的本质是理解本篇内容将围绕iOS中事件及其传递机制进行学习和分析。在iOS中,事件分为三类:触控事件(单点、多点触控以及各种手势操作) 传感器事件(重力、加速度传感器等) 远程控制事件(远程遥控iOS设备多媒体播放等)这三类事件共同构成了iOS设备丰富的操作方式和使用体验,本次就首先来针对第一类事件:触控事件,进行学习和分析。Gesture Recogniz...

2016-03-12 10:21:30 382

原创 三次握手与四次挥手

TCP/IP协议三次握手与四次握手流程解析一、TCP报文格式 TCP/IP协议的详细信息参看《TCP/IP协议详解》三卷本。下面是TCP报文格式图:图1 TCP报文格式 上图中有几个字段需要重点介绍下: (1)序号:Seq序号,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。 (2)确认序号:Ack序号,占32位,只有

2016-03-12 10:18:24 323

转载 http、TCP/IP协议与socket之间的区别

http、TCP/IP协议与socket之间的区别 网络由下往上分为:  www.2cto.com  物理层--                      数据链路层--网络层--                       IP协议传输层--                       TCP协议会话层--表示层和应用层--

2016-03-12 10:16:58 451

原创 ios内存优化

1. 用ARC管理内存ARC(Automatic ReferenceCounting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露。它自动为你管理retain和release的过程,所以你就不必去手动干预了。忘掉代码段结尾的release简直像记得吃饭一样简单。而ARC会自动在底层为你做这些工作。除了帮你避免内存泄露,ARC还可以帮你

2016-03-12 10:13:32 343

转载 Core Data入门

简介  Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象。在此数据操作期间,我们不需要编写任何SQL语句,这个有点类似于著名的Hibernate持久化框架,不过功能肯定是没有Hibernate强大的。简单地用下图描述下它的作用:

2016-03-12 10:10:15 227

原创 runtime 消息处理机制 -- (一)

这一章,我们就要开始讨论Runtime中最有意思的一部分:消息处理机制。我们将详细讨论消息的发送及消息的转发。不过在讨论消息之前,我们先来了解一下与方法相关的一些内容。基础数据类型SELSEL又叫选择器,是表示一个方法的selector的指针,其定义如下: 1 typedefstructobjc_selector*SEL; objc_s...

2016-03-12 10:09:04 415

ios swift 直播动画demo

swift的 , 会OC的看无压力 , 直播中送礼物的动画, 写了常见的4种 , 包括 同时收到多个礼物时 , 展示位不够 的处理 , 可以到cocoaChina上找,那里不要积分

2018-07-04

NSArray越界崩溃解决方法

比较完美的解决了数组越界的问题, 在debug模式下会崩溃 , 在release不会崩溃 , 开发过程中 , 方便调试 , 正式环境中 减少崩溃.

2018-05-08

空空如也

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

TA关注的人

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