随笔分类 -  IOS开发

摘要:声明:本文是本人 [编程小翁] 原创,转载请注明。 为了达到更好的阅读效果,强烈建议跳转[到这里]查看文章。 iOS动态性是我的关于iOS运行时的系列文章,由浅入深,从理论到实践。本文是第5篇。有兴趣可以看看我之前的文章。 用户行为统计(User Behavior Statistics, UBS)一 阅读全文
posted @ 2016-04-12 09:39 编程小翁 阅读(2145) 评论(3) 推荐(1) 编辑
摘要:声明:本文是本人 [编程小翁] 原创,转载请注明。 本文同步发布在简书中,强烈建议移步简书查看,[编程小翁] HTTP属于老话题了,在项目中我们经常需要往服务端发POST或者GET请求,但是对于HTTP的了解不应只局限于此。千里之行,始于足下。越想走的远,基本原理就应该了解的透彻全面一些,仅仅停留在 阅读全文
posted @ 2016-03-22 17:22 编程小翁 阅读(2351) 评论(3) 推荐(2) 编辑
摘要:为取得更好的排版效果,本文同样发布在简书上,强烈建议跳转到[1]http://www.jianshu.com/p/fed1dcb1ac9f 一、变量声明 为便于下文讨论,提前创建父类 以及子类 : Biology: Person: 补充说明 凡是在父类中定义的属性或者变量,末尾... 阅读全文
posted @ 2015-11-28 22:03 编程小翁 阅读(3907) 评论(3) 推荐(0) 编辑
摘要:在我的上一篇文章《iOS 手把手教你发布代码到CocoaPods》中着重介绍如何将自己的代码索引添加到公开的CocoaPods中,当你需要主动地向大众开源你的代码时需要那么做。但在现实中我们往往会有这种需求:既想享受CocoaPods所带来的遍历,又不想让别人知道这些代码,比如企业项目托管就会有这个... 阅读全文
posted @ 2015-08-26 15:10 编程小翁 阅读(2482) 评论(0) 推荐(0) 编辑
摘要:Change Log: 2015.08.20 - 添加podspec文件更新方法 2015.08.19 - 首次发布 概述 关于CocoaPods的介绍不在本文的主题范围内,如果你是iOS开发者却不知道CocoaPods,那可能要面壁30秒了。直奔主题,这篇文章主要介绍如果把你的代码发布到Cocoa 阅读全文
posted @ 2015-08-19 17:26 编程小翁 阅读(13060) 评论(2) 推荐(3) 编辑
摘要:概述本文主要解析从我们的手指触摸苹果设备到最终响应事件的整个处理机制。本质上讲,整个过程可以分为两个步骤:步骤1:找目标。在iOS视图层次结构中找到触摸事件的最终接受者;步骤2:事件响应。基于iOS响应者链(Responder Chain)处理触摸事件找目标在找目标阶段所使用到的两大利器是UIVie... 阅读全文
posted @ 2015-08-11 16:08 编程小翁 阅读(3080) 评论(1) 推荐(0) 编辑
摘要:概述今天我们主要讨论iOS runtime中的一种黑色技术,称为Method Swizzling。字面上理解Method Swizzling可能比较晦涩难懂,毕竟不是中文,不过你可以理解为“移花接木”或者“偷天换日”。用途介绍某种技术的用途,最简单的方式就是抛出一些应用场景来引出这种技术的必要性。因... 阅读全文
posted @ 2015-08-10 11:17 编程小翁 阅读(6498) 评论(0) 推荐(3) 编辑
摘要:概述今天我们来实现一个iOS平台上的进度条(progress bar or progress view)。这种进度条比APPLE自带的更加漂亮,更加有“B格”。它拥有渐变的颜色,而且这种颜色是动态移动的,这里称之为WGradientProgress。先来看看我们的目标长什么样子:WGradientP... 阅读全文
posted @ 2015-07-22 14:58 编程小翁 阅读(5801) 评论(2) 推荐(1) 编辑
摘要:一、概念阐述:Build与Version的区别在iOS中有两种“版本号”,也就是所谓的version号与build号,如下图所示:我们用最简洁的语言来区分这两个版本号的区别以及用途如下:Version号:也称为Bundle versions string, sthort. appstore以及itu... 阅读全文
posted @ 2015-07-15 14:10 编程小翁 阅读(4650) 评论(0) 推荐(3) 编辑
摘要:更新日志V1.2 2015.09.25 1.UITabBarItem badge is supproted; 2.Enable change badge properties when badge is showing; 3.Other code optimization.V1.1 2015.08.... 阅读全文
posted @ 2015-07-10 09:57 编程小翁 阅读(16107) 评论(18) 推荐(9) 编辑
摘要:作为一名应用开发者,你是否有过如下经历?为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作。它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 !如果你跟我一样是个完美主义者,你肯定想将应用做到尽善尽美。于是你打开代码准备修复闪退的问题……但是,从何处着... 阅读全文
posted @ 2015-07-09 10:00 编程小翁 阅读(4131) 评论(0) 推荐(0) 编辑
摘要:总结一下,目前.app包转为.ipa包的方法有以下几种: 1、Apple推荐的方式,即实用xcode的archive功能 Xcode菜单栏->Product->Archive->三选一,一般选后两个。 局限性:个人开发一般采用这种方法,但是当一个证书多人使用时就稍显麻烦。一般多人开发时都是采用pro 阅读全文
posted @ 2015-06-26 10:49 编程小翁 阅读(138010) 评论(0) 推荐(5) 编辑
摘要:在开始介绍如何使用CMake编译跨平台的静态库之前,先讲讲我在没有使用CMake之前所趟过的坑。因为很多开源的程序,比如png,都是自带编译脚本的。我们可以使用下列脚本来进行编译:./configure --prefix=/xxx/xx --enable-static=YESmakemake ... 阅读全文
posted @ 2015-04-29 18:10 编程小翁 阅读(58482) 评论(1) 推荐(3) 编辑
摘要:从本文开始,我将专门开辟一个Github Code系列,开源自己写的一部分有意思而且实用的demo,共同学习。以前都发布在git OSChina上,后面有空会陆陆续续整理到Github上。OSChina最大的优点是可以免费托管私有项目,服务器在国内速度快,这些是Github所比不了的。不过Githu... 阅读全文
posted @ 2015-03-24 16:41 编程小翁 阅读(2523) 评论(1) 推荐(4) 编辑
摘要:在iOS中view的frame属性使用地太频繁了,尤其是调UI的时候。我们知道,正常情况下我们无法对frame的某个属性(x,y,width,height等)进行单独修改,比如:someView.frame.x = 100;这种方式是不允许的,但实际上我们更经常遇到的是frame的大部分元素值保持不... 阅读全文
posted @ 2015-03-23 15:11 编程小翁 阅读(16039) 评论(0) 推荐(1) 编辑
摘要:网上此类帖子博客不少,不过自己没整理过的东西始终是别人,现开此贴加以总结,持续更新!站在巨人的肩膀上才能站得高看得远。第一部分:UI类1、毛玻璃模糊效果RNFrostedSidebar一个iOS 7设计风格的控制中心式的导航栏——毛玻璃效果,扁平化设计以及定制动画全部融于其中。地址:https://... 阅读全文
posted @ 2015-03-23 11:49 编程小翁 阅读(3430) 评论(2) 推荐(0) 编辑
摘要:或许这个题目起得有点太高调了,不过我只是想纠正一些童鞋对于autorelease的认识,如果能帮到几个人,那这篇文章也就值得了!当然,高手请绕道本文主要探讨两个方面:(1)autorelease对象到底是合适被析构的?(2)OC内部是如何处理一个被autorelease掉的对象的?(1)autore... 阅读全文
posted @ 2015-03-20 13:54 编程小翁 阅读(14150) 评论(1) 推荐(1) 编辑
摘要:ARC已经出来很久了,自动释放内存的确很方便,但是并非绝对安全绝对不会产生内存泄露。导致iOS对象无法按预期释放的一个无形杀手是——循环引用。循环引用可以简单理解为A引用了B,而B又引用了A,双方都同时保持对方的一个引用,导致任何时候引用计数都不为0,始终无法释放。若当前对象是一个ViewContr 阅读全文
posted @ 2015-03-19 11:22 编程小翁 阅读(34773) 评论(10) 推荐(4) 编辑
摘要:KVO,全称为Key-Value Observing,是iOS中的一种设计模式,用于检测对象的某些属性的实时变化情况并作出响应。网上广为流传普及的一个例子是利用KVO检测股票价格的变动,例如这里。这个例子作为扫盲入门还是可以的,但是当应用场景比较复杂时,里面的一些细节还是需要改进的,里面有多个地方存... 阅读全文
posted @ 2015-03-18 11:50 编程小翁 阅读(43161) 评论(10) 推荐(5) 编辑
摘要:OC是运行时语言,只有在程序运行时,才会去确定对象的类型,并调用类与对象相应的方法。利用runtime机制让我们可以在程序运行时动态修改类、对象中的所有属性、方法,就算是私有方法以及私有属性都是可以动态修改的。本文旨在对runtime的部分特性小试牛刀,更多更全的方法可以参考系统API文件,demo... 阅读全文
posted @ 2015-03-17 17:25 编程小翁 阅读(19501) 评论(7) 推荐(3) 编辑

我是来自厦门的Jilon. 翁,请关注我的微博:真实的weng,或关注微信:Jilon