iOS学习笔记
文章平均质量分 81
不想做码农的码农
这个作者很懒,什么都没留下…
展开
-
iOS学习笔记(一)背景
毕业后的我在一家做网络安全审计系统的公司就职,职位上是叫c/c++程序员,实际上干的活都是杂七杂八的,工作环境是windows,开发环境是linux 。网页制作(html、css、php、js等)、shell脚本编写、网络数据分析(由软件或网页产生的网络数据)、mysql存储过程编写、openwrt、都是我经常干的事情,而c++编码方面少之又少,到了后期(1年后)才主要都是写c++代码。我不喜原创 2014-07-13 22:38:37 · 973 阅读 · 2 评论 -
Objc 委托Category 的基本理解
引子之前,从书本上看过对于Category原创 2014-08-08 14:59:03 · 2093 阅读 · 0 评论 -
Objc 协议以及委托 --个人理解
引子为了弄明白委托和协议是什么东西以及怎么使用,我经常是隔三差五的在网上找资料来理解它。每次看完各种博客对于“委托和协议”的讲解,没过几天当我又看到“协议”、“委托“这两个关键词的时候,心里又产生一种陌生以及恐惧的感觉!我不认识他了,我又不认识它了!!今天我又遇见它了,这一次我得记住它!就算记不住,我也要把我今天对”协议“、”委托”的理解程度给记下来。方便下次再遇到这两个东西的时候,进行回原创 2014-08-06 18:12:53 · 5023 阅读 · 0 评论 -
cocoa 键值观察依赖键(KVO)--笔录
1. 什么是键值观察依赖键,可参考文章原创 2014-07-31 05:55:20 · 1334 阅读 · 0 评论 -
cocoa 自动键值观察(KVO)--笔录
自动的键值观察比较简单,可以很简单的就能验证:原创 2014-07-31 03:10:48 · 760 阅读 · 0 评论 -
Objective-C 中Self 和 Super 详解
Objective-C 中Self 和 Super 详解本文要介绍的内容,在 Objective-C 中的类实现中经常看到这两个关键字 self 和 super,以以前 oop 语言的经验,拿 c++ 为例,self 相当于 this,super 相当于调用父类的方法,这么看起来是很容易理解的。以下面的在 Objective-C 中的类实现中经常看到这两个关键字 ”self” 和 ”s转载 2014-07-30 06:46:15 · 688 阅读 · 0 评论 -
Object-C 指针 和 C 指针的相互转换 与ARC 并验证__bridge关键字的作用
引子zai原创 2014-07-29 18:18:58 · 7101 阅读 · 1 评论 -
cocoa Class、id、以及NSObject 的关系--笔录
1.class 与 id的定义:typedef struct objc_class *Class;原创 2014-07-27 03:14:17 · 1443 阅读 · 0 评论 -
cocoa self 、[self class]的关系整理
1. self 的类型是id原创 2014-07-27 05:37:49 · 2009 阅读 · 0 评论 -
iOS 之 Bonjour 协议简单抓包分析
引子因在学习ios编程之bonjour编程的过程中,对bonjour产生了一些些的ha原创 2014-08-19 18:20:09 · 10163 阅读 · 0 评论 -
Google webp 编译生成 iOS framework
什么是webp?这里我就不多说了,直接在官网黏一段描述过来:WebP is a new image format that provides lossless and lossy compression for images on the web. WebP lossless images are 26% smaller in size compared to PNGs. WebP lossy原创 2015-01-20 14:16:11 · 7026 阅读 · 0 评论 -
Swift 与Object C 的比较
1.swift 没有.h文件,也就是头文件 2.swift对于类的声明是使用class关键字而不是interface 3.swift使用var定义变量,默认是不是自动给变量赋初始值的 4.swift中的问号,如,表示该变量的值是可选的,也就是说这个变量值可能为nil,也可能是一个具体的值。var typeName:String?5.那么对于这种声明时候带有问号(即声明为可选)的变量如何使用呢原创 2015-07-14 10:25:59 · 2983 阅读 · 0 评论 -
Objc Block 对于变量的访问
引子看了许多关于介绍object c 中Block的介绍,原创 2014-08-18 20:14:46 · 4475 阅读 · 0 评论 -
Xcode 代码模板
当我们在Xcode中新建一个UIViewController子类的viewController 时候,Xcode会自动帮我们把一部分代码生成(viewDidLoad、didReceiveMemoryWarning方法等,以及注释)。今天,于是花了一点时间了研究了一下,并整理出一个简化模板拷贝以及修改TemplateInfo.plist 中后缀名的Shell 脚本工具。脚本脚本比较简单,就不详细解释了原创 2016-05-10 12:03:39 · 1827 阅读 · 3 评论 -
让面试官“告诉”你,你很出菜
一直以来觉得花时间去学习UI方面的知识,还不如深入去学习其他的知识,所以导致我在UI方面一直属于弱项。有一天我面试了一家公司。面试官问的问题,90%都是UI相关的,其中一段对话让我印象最深刻!”从事ios发开多久了?” “差不多一年了” 实际上是6个多月,说是一年,其实我是想表达我有足够经验! “UITableView 会吗?自定义控件XXXXX..会吗?”因为我基本没有用过这东西,只是看过,想了想回答说“恩恩,用的不多,UITableView 不是就一个列表吗!,自定义控件的没怎么用过…有听说过(囧)”,原创 2015-03-23 11:29:56 · 1615 阅读 · 0 评论 -
python 工具化查询苹果送审页面iTunes Connect的应用的各种信息
引子作为ios开发人员,你经常-每天都要被产品的同学经常问你,这个app的状态怎么样了啊?进入审核了吗?过审了吗?游戏的Bundle ID是什么?Apple ID 是什么?等等诸如此类的事,你烦不烦,烦不烦?于是,就想着去做一个工具,来爬取iTunes Connect 的数据,这样不就可以让其他的同学自己去查!good idea!原创 2015-01-17 15:24:19 · 2630 阅读 · 7 评论 -
ios UIWebView中如何让图片大小适应屏幕宽度
1.采用在html的head中加mata标签缺点:整个页面都会被缩小来适应屏幕宽度。2.通过添加js来自动修改图片的大小。缺点:图片的原本宽高大小是js所不知道的,不能按照图片宽高比来缩放到适应屏幕宽度。3.遍历html中的img 标签,通过img标签中src值来下载图片以获取图片的宽高。在按照一定宽高比得到适应屏幕的宽和高之后,重新定义img标签(加上width和he原创 2015-06-01 00:43:59 · 9829 阅读 · 2 评论 -
ios内联函数 inline
ios内联函数 inline缘由由于在学习使用UIScrollVew开发的过程中,碰到下面这个属性(设置内边距):@property(nonatomic) UIEdgeInsets scrollIndicatorInsets; // default is UIEdgeInsetsZero. adjust indicators insi原创 2015-08-25 20:30:20 · 10277 阅读 · 6 评论 -
pushViewController 与 presentViewController 与 TabBarController 之间切换VC
pushViewController 与 presentViewController 与 TabBarController 之间切换VC缘由pushViewController、presentViewController以及TabBarController这3中方法、他们都可以用来切换ViewController。由于在写代码的时候,产生了一些疑惑,切换之前和切换之后的ViewController他原创 2015-09-15 01:06:37 · 6314 阅读 · 0 评论 -
iOS 运行时
# iOS 运行时两个重要的类型id 与 Class,在 objc/objc.h 中可以找到两者定义typedef struct objc_object *id;typedef struct objc_class *Class;id 与 Class 都是指向结构体的指针,下面看看两个结构体objc_object、objc_class 的区别:struct objc_object { Cl原创 2016-04-22 17:37:23 · 1175 阅读 · 0 评论 -
逆向分析isKindOfClass 内部实现
前段时间,同事给看了一段有趣的代码。对于这段代码执行的结果的出乎意外,我们产生了各种的猜测。但猜测毕竟只是猜测,难免会有误会。对于isKindOfClass的实现很好奇,于是决定探究一下isKindOfClass的内部实现!代码int main(int argc, const char * argv[]) { //测试1 if ([[NSString class] isKindOfC原创 2016-07-21 17:27:40 · 3713 阅读 · 2 评论 -
gdb 如何调试内存地址
样例代码 int age= 20; int *p_age = &age; NSLog(@"p_age = %p", p_age); //输出指针变量p_age指向值20所在内存的地址 NSLog(@"&p_age = %p", &p_age); //输出指针变量p_age本身的地址 2017-07-19 15:54:07.048 Test07原创 2017-07-20 09:18:40 · 5160 阅读 · 0 评论 -
Objective-C 对象模型深入理解
0x00序本着加深对Objective-C 对象模型的理解和记忆目的,于是有了下文的简单实践操作。0x01 疑问在以下代码中,你能描述清楚以下问题吗?TestClass的实例对象tcA和tcB的内存结构是怎么样的TestClass的实例对象的大小@interface TestClass : NSObject{ @public int myInt;...原创 2018-05-10 17:13:20 · 516 阅读 · 0 评论 -
Facebook 开源动画框架 Pop
Facebook 开源动画框架 Pop作者:fenglh/2016.08.25继承关系创建动画使用POP可以创建4类动效:: spring, decay, basic and custom.Spring (弹性)动效可以赋予物体愉悦的弹性效果POPSpringAnimation *anim = [POPSpringAnimation animationWithPropertyNamed:kPOPLa原创 2016-08-25 16:55:38 · 992 阅读 · 0 评论 -
约束报错、冲突如何定位UI
问题在使用AutoLayout 或者masonry 布局UI的时候,经常会遇到约束冲突的警告。 例如:图中,我们知道是一个Button的约束冲突了,但是不能很直接的让人知道是哪个Button。lldb要是能知道这个Button UIButton:0x12c7f6f30的title是什么,那么我们不就可以在代码中直接搜索该title,定位到代码中的Button?(lldb) po 0x12c7f6f原创 2016-07-15 18:26:24 · 3979 阅读 · 0 评论