- 博客(44)
- 收藏
- 关注
原创 真机测试有帮助
这两天项目做完了,有些闲暇时间,给大家分享一下我真机测试的心得,也算是自己总结一下吧!不喜勿喷。。。真机测试前准备工作:1.苹果的MAC一台。如果你用的是***不知道可不可以,反正我没用过。。。一般公司都会给你配开发工具的。2.iphone手机一部。(本人纯屌丝,用的iphone4)3.开发者账号。(这是必须的,有时间的话我把申请开发者账号流程也整理一下)如果你手机越狱了,那么就此
2015-12-06 02:21:53
491
原创 KVO实现原理
Key-Value Observing (KVO)KVO:当指定的对象的属性被修改了,允许对象接收到通知的机制。[persion addObserver : self forKeyPath : @"age" options : NSKeyValueObservingOptionOld | NSKeyValueObservingOptionNew context :
2015-12-01 16:32:53
460
原创 iOS中的开发模式
ios开发学习中,经常弄不清楚ios的开发模式,今天我们就来进行简单的总结和探讨~(一)代理模式应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现。优势:解耦合敏捷原则:开放-封闭原则实例:tableview的 数据源delegate,通过和protocol的配合,完成委托诉求。列表row个数delegate自定义的delegate
2015-11-29 22:17:51
370
原创 iOS开发之UI基础--tableView展示斐波那契数列(Fibonacci)
斐波那契数列Fibonacci斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368特别指出:第0项是0,第1项是第一个1。这个数列从第2项开始,每一项都等于前两项之和。斐
2015-09-24 15:27:49
1546
原创 Xcode7--免费真机调试
运行Xcode后,点击菜单中的Preferences…进入Accounts标签,这里选择添加Apple ID: 在弹出的对话框中登入你的Apple ID,没有的话去注册一个就是了,登录成功后会看到下面这样的信息: 可以看到下面显示了iOS和Mac的Free标记了,以前版本的Xcode如果你登陆的账号没有付费的话,这里会显示没有加入Apple Developer Program,
2015-09-17 02:22:49
535
原创 Block了解
Block是iOS中一种比较特殊的数据类型既然是数据类型,那么就可以通过该数据类型声明变量,并保存数据。block数据类型不是用来保存int、double、NSString等数据的,而是用来保存一段代码的。既然有变量可以保存一段代码,那么也就意味着可以把一段代码作为参数传递了。Block是苹果官方特别推荐使用的数据类型,应用场景比较广泛动画多线程集合遍历网络请求回调Block的作用用来保存某一段代
2015-09-15 13:38:34
332
原创 Category分类用法
Category有很多种翻译:分类 \类别 \类目 (一般叫分类)Category是OC特有的语法,其他语言没有的语法(类似于C#语言中的”扩展方法”和”partial”关键字)Category的作用可以在不修改原来类的基础上,为这个类扩充一些方法.把一个类的内容分在多个不同的文件中存储便于团队协作开发注意点:分类只能增加方法, 不能增加成员变量、@property(可能编译不报错,但
2015-09-15 13:35:36
611
原创 ARC了解
ARC是自iOS5开始增加的新特性,是iOS程序猿的福音ARC的全称是AutomaticReferenceCounting(自动引用计数)ARC的实现细节编译器会自动在适当的地方插入适当的retain、release、autorelease语句也就是说,编译器会自动生成内存管理的代码,不用程序猿手动编写如果是手动管理内存,可以简称MRC(
2015-09-15 13:34:09
359
原创 OC之内存管理(个人笔记)
/* 1)为什么要进行内存管理? 移动设备的内存有限 2)内存管理的范围 所有的继承了NSObject类的对象 3)内存管理的原理 i,对象的所有权 一个对象的所有者(拥有者) ii,对象的引用计数器 1)一个变量,2)每个对象都有 3)8
2015-09-15 13:32:18
323
原创 ioS开发之网络--网络基础概况
/*----------------------------- 网络基础: 1.二进制数据流 -------------------------*/重点:1.了解网络中传输的都是二进制数据流. 2.了解网络编程概念.{ 认识网络: // 网络概念 经常见到的: 网卡/网线/IP地址/子网掩码/路由地址/DNS服务器地址作用?
2015-09-07 19:54:03
389
原创 iOS开发之网络--服务器配置
服务器配置步骤:1>打开服务器配置目录cd /etc/apache2/2>查看当前目录下内容ls3>修改服务器根路径{ sudo vim httpd.conf //进入服务器配置文件 /DocumentRoot回车 //查找服务器默认根路径
2015-09-07 19:49:09
340
原创 ioS开发之UI基础--使用xib自定义UItableviewcell实现一个简单的团购应用界面布局
使用xib自定义UItableviewcell实现一个简单的团购应用界面布局一.效果图二、项目文件结构和plist文件三.示例代码//// BLGroupBuy.h// 团购//// Created by apple on 15/8/3.// Copyright (c) 2015年 LBL. All
2015-09-07 00:50:03
623
原创 iOS开发之UI基础--纯代码自定义UItableviewcell实现一个简单的微博界面布局
纯代码自定义UItableviewcell实现一个简单的微博界面布局一、使用纯代码自定义一个tableview的步骤1.新建一个继承自UITableViewCell的类2.重写initWithStyle:reuseIdentifier:方法添加所有需要显示的子控件(不需要设置子控件的数据和frame, 子控件要添加到contentView中)进行子控件
2015-09-07 00:11:51
1306
转载 ioS开发之多线程-- 第三方库SDWebImage
SDWebImage是一个开源的第三方库,它提供了UIImageView的一个分类,以支持从远程服务器下载并缓存图片的功能。它具有以下功能:提供UIImageView的一个分类,以支持网络图片的加载与缓存管理一个异步的图片加载器一个异步的内存+磁盘图片缓存支持GIF图片支持WebP图片后台图片解压缩处理确保同一个URL的图片不被下载多次确保虚假的URL不会被反复加载确保下载及缓存时,主线程
2015-09-06 12:57:49
2120
原创 iOS开发之多线程-- NSOperation使用简介(个人笔记)
NSOperation使用简介 1.操作 NSOperation和操作队列 NSOperationQueue!{ 1.NSOperation(操作)简介: NSOperation: // 本质是对 GCD 的封装, OC 语言. NSOperation和 GCD 的比较: G
2015-09-06 12:47:38
878
原创 ioS开发之UI基础--UITableView简单了解(个人笔记)
1.UITableView默认只是一个空壳子2.TabeleView不知到内部需要显示什么样内容,如何才能告诉tableView中显示内容呢?3.它需要一个专门为它提供数据的代理-数据源设置数据源三个步骤:1.遵守数据源协议2.设置设置控制器为tableView数据源3.实现数据源方法三个核心方法//1.tableView中一
2015-09-05 00:45:07
422
原创 ioS开发之UI基础--NSRunLoop了解
NSRunLoop一.NSRunLoop在Cocoa中,每个线程(NSThread)对象中内部都有一个run loop(NSRunLoop)对象用来循环处理输入事件,处理的事件包括两类,一是来自Input sources的异步事件,一是来自Timer sources的同步事件;run Loop在处理输入事件时会产生通知,可以通过Core Foundation向线程中
2015-09-03 22:52:29
335
原创 ioS开发之UI基础--UIScrollView的基本使用
UIScrollView的基本使用一、使用步骤1、拖拽一个UIScrollView2、把滚动的内容放到UIScrollView中3、设置UIScrollView的contentSize属性 拖动的范围二、无法滚动检查//以上步骤即可,如果控件依然无法滚动,检查下面两个属性是否被禁用1、self.scrollView.scrollEnabled;2
2015-09-03 22:43:29
378
原创 iOS开发之UI基础--三种简单的动画设置
一、首尾式动画示例代码:// beginAnimations表示此后的代码要“参与到”动画中 [UIView beginAnimations:nil context:nil];//设置动画时长 [UIView setAnimationDuration:2.0]; self.headImageView.bounds = rect;
2015-09-03 22:28:11
326
原创 iOS开发之UI基础--KVC
KVC—— key value coding1.字典转模型//self.answer = dic[@"answer"];//self.icon = dic[@"icon"];//self.title = dic[@"title"];//self.options = dic[@"options"];//kvc 把字典中的值,赋给当前对象制定的属性(@"answer")[s
2015-09-03 22:14:41
368
原创 ios开发之多线程--GCD介绍
一.GCD简单介绍1.什么是GCD全称是Grand Central Dispatch,可译为“牛逼的中枢调度器”纯C语言,提供了非常多强大的函数2.GCD的优势GCD是苹果公司为多核的并行运算提出的解决方案GCD会自动利用更多的CPU内核(比如双核、四核)GCD会自动管理线程的生命周期(创建线程、调度任务、销毁线程)程序员只需要告诉GCD想要执行什么任务,不
2015-09-03 22:03:40
517
原创 iOS开发之多线程--多线程简单介绍
一、进程和线程1.什么是进程 进程是指在系统中正在运行的一个应用程序每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ、Xcode,系统就会分别启动2个进程通过“活动监视器”可以查看Mac系统中所开启的进程 2.什么是线程1个进程要想执行任务,必须得有线程(每1个进程至少要有1
2015-09-03 18:56:06
402
原创 ios开发之UI基础--应用管理xib-九宫格布局
ios开发之UI基础--应用管理xib-九宫格布局一.要求:完成下面界面二.分析三.创建模型数据#import @interface YelloModel : NSObject// name 是用来表示 label上的文本的@property (nonatomic, strong) NSString *name;// ic
2015-09-02 00:26:03
1262
原创 ios开发之UI基础--懒加载
1.懒加载基本懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法.注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化2.使用懒加载的好处:(1)不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强(2)每个控件的getter方法中分别负责各自的实例化处理,代
2015-09-01 23:44:47
319
原创 ios开发之UI基础--transframe属性
1. transform属性在OC中,通过transform属性可以修改对象的平移、缩放比例和旋转角度常用的创建transform结构体方法分两大类(1) 创建“基于控件初始位置”的形变CGAffineTransformMakeTranslation(平移)CGAffineTransformMakeScale(缩放)CGAffineTransform
2015-09-01 23:24:29
432
原创 iOS开发之UI基础--纯代码控件.frame,center,bounds属性
一、手写控件1.手写控件的步骤(1)使用相应的控件类创建控件对象(2)设置该控件的各种属性(3)添加控件到视图中(4)如果是button等控件,还需考虑控件的单击事件等(5)注意:View Contollor和view的关系2.注意点在OC开发中,Storyboard中的所有操作都可以通过代码实现,程序员一定要熟练掌握代码布局界面的能
2015-09-01 23:11:01
444
原创 iOS开发之UI基础--Button基础
UIButton按钮的四种状态normal(普通状态)默认情况(Default)对应的枚举常量:UIControlStateNormal highlighted(高亮状态)按钮被按下去的时候(手指还未松开)对应的枚举常量:UIControlStateHighlighted disabled(失效状态
2015-09-01 22:55:52
459
原创 iOS中的触摸事件
•在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并处理事件。我们称之为“响应者对象” •UIApplication、UIViewController、UIView都继承自UIResponder,因此它们都是响应者对象,都能够接收并处理事件"•UIResponder内部提供了以下方法来处理事件触摸事件- (void)touche
2015-08-21 13:08:00
332
原创 代码实现Autolayout:使用NSLayoutConstraint对象
1.让控件添加到父控件中 /**添加蓝色的View到父控件上*/ UIView *blueView = [[UIViewalloc]init]; blueView.backgroundColor = [UIColor blueColor]; // 不要将AutoresizingMask转为Autolayout的约束(这句
2015-08-20 00:44:10
319
原创 UIScrollView的属性总结
UIScrollView的属性总结属性作用CGPoint contentOffSet监控目前滚动的位置CGSize contentSize滚动范围的大小UIEdgeInsets contentInset视图在scrollView中的位置iddelegate
2015-07-31 19:48:17
426
原创 iOS中的MVC模式
模型对象(Model)模型对象封装了应用程序的数据,并定义操控和处理该数据的逻辑和运算。例如,模型对象可能是表示游戏中的角色或地址簿中的联系人。用户在视图层中所进行的创建或修改数据的操作,通过控制器对象传达出去,最终会创建或更新模型对象。模型对象更改时(例如通过网络连接接收到新数据),它通知控制器对象,控制器对象更新相应的视图对象。视图对象(View)视图对象是应用程序中用户可以看见的
2015-07-27 23:29:27
378
原创 iOS strong .copy .retain .weak .assign的区别,以及各自的用法
1:ARC环境下,strong代替retain.weak代替assign2:weak的作用:在ARC环境下,,所有指向这个对象的weak指针都将被置为nil。这个T特性很有用,相信很多开发者都被指针指向已释放的对象所造成的EXC_BAD_ACCESS困扰过,使用ARC以后,不论是strong还是weak类型的指针,都不会再指向一个已经销毁的对象,从根本上解决了意外释放导致的crash。 3
2015-07-27 23:14:23
498
原创 Xcode快捷键
1. 文件CMD + N: 新文件CMD + SHIFT + N: 新项目CMD + O: 打开CMD + S: 保存CMD + SHIFT + S: 另存为CMD + W: 关闭窗口CMD + SHIFT + W: 关闭文件2. 编辑CMD + [: 左缩进CMD + ]: 右缩进CMD + CTRL + LEFT: 折叠CMD +
2015-07-25 23:55:15
246
转载 深谈ARC机制
ARC是iOS 5推出的新功能,全称叫 ARC(Automatic Reference Counting)。简单地说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管理的引用计数的代码可以自动地由编译器完成了。 该机能在 iOS 5/ Mac OS X 10.7 开始导入,利用 Xcode4.2 可以使用该机能。简单地理解ARC,就是通过指定
2015-07-21 19:09:10
396
原创 Foundation框架常见结构体(个别)
常见结构体 1.NSPoint和CGPoint 二维平面的点 CGPoint定义: struct CGPoint { CGFloat x; CGFloat y;}; 可以使用CGPointMake和NSMakePoint函数创建CGPoint 2.NSSize和CGSize
2015-07-20 22:51:45
382
转载 iOS中nil 、NULL、 Nil 、NSNull的区别详谈
1.nil >Defines the id of a null instance. 定义一个实例为空, 指向oc中对象的空指针. >示例代码: NSString *someString = nil; NSURL *someURL = nil; id someObject = nil; if (anotherObject == nil) // do
2015-07-19 22:21:04
354
转载 Category用法
今天给大家介绍一下我们常说的Category的详细用法,首先引用API文档的一段话:You use categories to define additional methods of an existing class—even one whose source code is unavailable to you—without subclassing.从这段话中我们可
2015-07-18 00:27:50
965
原创 NSString字符串比较
字符串比较原理,字符串的每个字符,比较ASCII码值的大小 a < d 升序 -1 NSOrderedAscending a > d 降序 1 NSOrderedDescending a == d 相等 0 NSOrderedSame直接上代码:在OC中isEqualToString比较字符串内容是否相等代码:
2015-07-17 22:19:48
512
转载 iOS开发内存管理
说明:1、计数器2、@property的内存管理3、循环语句4、ARC(一)内存管理1、引用计数器的作用:1> 当使用alloc、new或copy创建一个新对象时,新对象的引用计数器就认为是1,因此就必须调用[p release]/autorelease来使计数器-1;2> 当一个对象的引用计数器值为0时,对象占用
2015-07-16 22:08:17
470
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人