关闭

【iOS性能优化】MLeaksFinder内存泄漏检测

功能分析MLeaksFinder 是 iOS 平台的自动内存泄漏检测工具,可以在日常调试业务逻辑时自动发现并警告内存泄漏,而无需打开 instrument 等工具。它简单方便且不入侵项目逻辑,不用写任何代码即可实现ViewController,View 的内存泄露检测,也可定制检测其他类型对象的内存泄漏问题。原理当一个 ViewController 被 pop 或 dismiss 之后,我们认为该...
阅读(25) 评论(0)

【Swift基础】Swift 4.0学习笔记

The Swift Programming Language 4.0 中文版学习笔记 11. 基础部分注释嵌套注释: /* A /* B */ /常量和变量常量和变量名可以使用Unicode字符来命名,但不能包含数学符号,箭头,保留的(或者非法的)Unicode码位,连线与制表符。也不能以数字开头。常量和变量一旦声明为确定的类型,即不能改变其存储的值的类型。同时,常量和变量不能互转。数字除非需...
阅读(53) 评论(0)

【iOS界面开发】UIWindow屏幕旋转自适应

屏幕上显示的每个视图都被包含于UIWindow对象,app内每个window之间相互独立。app接收到的事件都最先路由到合适的window对象,再由此派发到合适的视图。Windows与ViewControllers一起协作,从而实现屏幕旋转变换,完成各项任务。避免直接调用- [UIWindow addSubview:]方法来添加视图,而是通过操作UIViewController来添加视图,从而实现屏...
阅读(102) 评论(0)

【Objective-C环境】Objective-C编译优化

一般可以将编程语言分为两种,编译语言和直译式语言。像C++,Objective C都是编译语言。编译语言在执行的时候,必须先通过编译器生成机器码,机器码可以直接在CPU上执行,所以执行效率较高。像JavaScript,Python都是直译式语言。直译式语言不需要经过编译的过程,而是在执行的时候通过一个中间的解释器将代码解释为CPU可以执行的代码。所以,较编译语言来说,直译式语言效率低一些,但是编写的...
阅读(190) 评论(0)

【版本管理】SVN使用问题小结

无法加入版本管理的文件从分支代码合并到主干时,遇到新添加的文件夹里的文件没被纳入到svn管理,试了若干种方法无果: find ./ -name “.svn” | xargs rm -Rf svn add * –force 最终解决方案: 拷贝出文件,将之从原版本管理库中删除,再重新拖进来,Adding to Working copy...
阅读(156) 评论(0)

【Mac App工具】meld merge工具安装教程

meld是非常好用的文件夹和文件比较工具,跨平台,支持命令行启动。支持两到三个文件夹或文件的相互比较,且支持版本控制下本地文件与版本库文件的比较。随着Mac系统和Python的升级,meld工具新版本的安装不能依赖MacPorts、Homebrew等软件包管理工具来安装了。使用MacPorts安装过的软件在/opt/local目录下。Homebrew安装在/user/local目录下,同时它会创建/...
阅读(668) 评论(0)

【iOS界面开发】iOS事件派发机制

app启动时,UIApplicationMain方法会被调用,以创建一个UIApplication单例对象,它负责处理和派发系统发送给app事件队列的事件到合适的接收者。事件来源分为三种: UIControl Actions: these are the actions that are registered using the action/target pattern User events:...
阅读(411) 评论(0)

【Objective-C Runtime】类和对象的数据结构和消息传递机制

类与对象基础数据结构ClassObjective-C类是由Class类型来表示的,它实际上是一个指向objc_class结构体的指针。它的定义如下:1typedef struct objc_class *Class;查看objc/runtime.h中objc_class结构体的定义如下:struct objc_class { Class isa OBJC_ISA_AVAILABILITY;...
阅读(428) 评论(0)

【Objective-C基础】集合类

基础集合类是每一个Mac/iOS应用的基本组成部分。 NSArray/NSMutableArray NSSet/NSMutableSet/NSCountedSet NSOrderedSet/NSMutableOrderedSet NSIndexSet/ NSDictionary/NSMutableDictionary NSPointerArray...
阅读(1370) 评论(0)

【iOS界面开发】iOS UIControl事件说明

在UIControl控件事件中,简单解释下下面几个事件。说明:由于是在“iOS 模拟器”中测试的,所以不能用手指,只能用鼠标。1)UIControlEventTouchDown指鼠标左键按下(注:只是“按下”)的动作2)UIControlEventTouchDownRepeat指鼠标左键连续多次重复按下(注:只是“按下”)的动作,比如,鼠标连续双击、三击、……、多次连击。说明:多次重复按下时,事件序...
阅读(428) 评论(0)

【iOS架构】iOS应用的生命周期

程序的5种状态如图,iOS应用主要分为5种状态。1 [^2]Not Running (非运行状态)。应用没有运行或被系统终止。Inactive(前台非活动状态)。应用正在进入前台状态,但不能接受事件处理。app可能正在执行其他代码。Active(前台活动状态)。应用进入前台状态,能接受事件处理。Background(后台状态)。应用进入后台后,依然能够执行代码。如果有可执行的代码,就会执行代码,如果...
阅读(583) 评论(0)

【iOS界面开发】视图开发技巧

iOS触摸事件处理界面响应消息机制分两块,(1)首先在视图的层次结构里找到能响应消息的那个视图。(2)然后在找到的视图里处理消息。寻找响应消息视图过程寻找响应消息视图的过程可以借用M了个J的一张图来说明。处理原理如下:• 当用户点击屏幕时,会产生一个触摸事件,系统会将该事件加入到一个由UIApplication管理的事件队列中• UIApplication会从事件队列中取出最前面的事件进行分发以便处...
阅读(1244) 评论(0)

【iOS架构】iOS ReactiveCocoa函数响应式编程

声明式编程 声明式编程(declarative programming)是一种编程范型,与命令式编程相对立。它描述目标的性质,让电脑明白目标,而非流程。声明式编程不用告诉电脑问题领域,从而避免随之而来的副作用,大幅简化了并行计算的编写难度。而指令式编程则需要用算法来明确的指出每一步该怎么做。 声明式语言包括数据库查询语言(SQL,XQuery),正则表达式,逻辑编程,函数式编程和组态管...
阅读(1764) 评论(0)

【Xcode使用技巧】Xcode环境变量(environment variables)

Apple Build Setting Reference在苹果的 Build Setting Reference 文档1中可以找到所有可用的变量。工程中存在的所有环境变量在build 过程中,要想观察所有已存在的环境变量,你可以在 Build Phases 中添加一个 “Run Script”,并勾选上 “Show environment variables in build log”。示例打印结...
阅读(3610) 评论(0)

【Xcode使用技巧】通过Xcode查看真机中应用程序的数据文件

有时候开发调试时,需要查看真机中应用的文件,比如sqlite之类的,可按以下步骤进行:环境:Xcode Version 7.2.1,iPad2。1)点击Xcode的Window菜单项,选择Devices选项。2)点击左边设备一览中的iPad2,右边「Installed Apps」会显示出iPad上的所有第三方应用。3)选中要查看的应用。4)点击下面的设置按钮,选择「Download Containe...
阅读(3970) 评论(0)
91条 共7页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:420405次
    • 积分:4185
    • 等级:
    • 排名:第8124名
    • 原创:87篇
    • 转载:2篇
    • 译文:2篇
    • 评论:36条
    最新评论