自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 TableViewCell的几种重用方式的区别

TableViewCell的几种重用方式的区别重用机制reuseIdentifierregisterNibclassforCellReuseIdentifier重用生成单元格方法共同点不同点在使用了r方法注册的情况下不使用r方法注册的情况下最终使用方式为什么不用r注册的方式尾文TableViewCell的几种重用方式的区别重用机制关于TableView的重用机制相信网上教程一堆

2017-08-28 17:00:17 748

原创 JFTabView 标签滑动视图封装

JFTabView 标签滑动视图封装一h文件二m文件三使用四其它设置五原理五例子JFTabView 标签滑动视图封装项目中好多个地方需要上面标签,下面滑动视图的界面,有时候个数还不同,于是写了个封装。封装的JFtabView内部的包括点击滑动,布局等都自动完成,只需要直接传入需要的子视图和按钮即可显示界面,当然,下面滑动控件具体每个视图,还是需要自己去根据需求来做。外部的按钮点击方法也

2017-05-18 19:24:31 350

原创 WebViewJavascriptBridge的使用和封装

WebViewJavascriptBridge的使用和封装一前期工作1 下载库2 界面搭建二代码1 BridgeVc代码2 JavaScript代码WebBridgejs文件三总结WebViewJavascriptBridge的使用和封装iOS原生和UIWebView交互一般采用JavaScript来做,而目前第三方中框架比较好用,还是WebViewJavascriptBridge。

2017-05-15 17:23:06 5546 1

原创 RequestForOCFile(网络请求OC文件写入工具)

RequestForOCFile网络请求OC文件写入工具简介下载地址使用方法1 头部权限文件填写和预览2请求参数填写3 选择返回结果4 文件成功生成结束语RequestForOCFile(网络请求OC文件写入工具)前端开发离不开和后台交互,iOS亦然,后台返回的数据很多时候是以json的格式返回。iOS开发一般会根据后台返回的json数据创建数据模型,属性和json返回的数据一一对

2017-05-09 20:54:48 500

原创 Appcode 使用之SVN

Appcode 使用之SVNAppcode的使用方法在这里不作过多介绍,具体可以参照help里相关信息,这里只是对其内部的svn的使用作一个简单介绍。 Appcode的svn是作为其插件内置在软件里,而作为同样属于JetBrains系列的Intellij(java开发)和WebStorm(html,js),他们的插件体系均相同,因此他们的svn的使用方法原则上来讲是一样的,包括谷歌的安卓studi

2017-02-17 14:36:45 1381

原创 UIWebview交互之自定义传值跳转

UIWebview经常会用到和原生页面的跳转,有的可能还需要传值跳转。自己写了一个自定义跳转的webview,可以跳转到指定控制器并传值,这需要和后台协商好,html中如何传值跳转,即:html中的跳转按钮关联的js方法如何书写。html中的书写html中的测试代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"

2017-01-10 10:53:31 2730

原创 AppCode的使用

九大辅助界面  主界面先介绍了,中间的大框框,主要是用来显示文件的代码,除此之外的界面目测均属于这九大界面,只是有的显示了有的没有显示而已,鼠标放在软件的最左下角不动,会弹出一个菜单,上面即为九大界面,选择对应的图标,对应的即会显示出来,但是再次点击并不会消失,你需要手动去隐藏,一般都会有隐藏按钮(在齿轮按钮旁边),或者快捷键command+Esc也行.这九大界面你也可以放在软件的左边或者下边的工具

2016-05-02 19:20:45 11356 1

原创 IOS屏幕的适配

1.屏幕尺寸和分辨率 型号 尺寸 逻辑分辨率 物理分辨率 iPhone4(s) 3.5英寸 320*480 640*960 iPhone5(c/s) 4英寸 320*568 640*1136 iPhone6 4.7英寸 375*667 750*1334 iPhone6+ 5.5英寸 414*736 1242*2208转10

2016-03-05 23:53:53 523

原创 UITableView以及UITableViewCell设置的时候容易出现的错误

复制过来的UITableview文件复制的文件,首先肯定会需要更改名字,就因为这一步,可能会引发一连贯的错误this class is not key value coding-compliant for the key XX,这个错误需要从理论开始讲:每一个xib文件自带的文件在第六个检查器会有Outlets属性,这里罗列的是这个xib对应类的所有IBOutlet属性的控件,如果复制过来的xib

2015-12-09 22:47:08 511

原创 类别和继承的区别

类别:category,也叫分类,分类是对原有的类进行的扩展,比如一个类的,需要有一些新增的实现方法,可以添加一个类别,格式为 该类名+ 分类名,类别只能增加方法,不能修改原来的方法和属性.类别不提倡对原有方法进行重载,类别也可以被继承,如果一个父类定义了类别,那么其子类也可以继承此类别:继承:继承也是对原有类的一种扩展,但是是全新的一个继承与原来的类的类,拥有原来类的所有属性和方法,并可以修改和

2015-11-21 20:51:37 586

原创 OC的封装继承和多态

封装:个人理解就是对一些方法和属性等等集合在一起,只提供一个借口,让外部可以来方便的使用继承:个人立即为比如定义一个类,可以继承与一个已有的类,这个类则拥有了父类的所有方法和属性,并且可以重写这些属性和方法的具体描述多态:简单来说就是定义类型和实际类型,定义类型可以放入不同的实际对象来进行操作,实际的例子就是Tableview代理.一个主控制器里面,你可以添加多个tableview,在代理方法里

2015-11-21 16:48:48 428

转载 使用内部的方法来实现HTTP请求

同步请求:发送同步请求以后,主线程会阻塞,需要返回数据后用户才能继续操作,具体使用上,定义好NSURL以及NSURLCollection,并发送请求即可,使用NSData接收后即可使用异步请求:不会阻塞主线程,但是因为是异步的,所以官方的时候方法是在代理里面接受Data,然后来进行使用1、 同步GET请求 //第一步,创建URL NSURL *url = [NSURL UR

2015-11-21 16:43:06 485

转载 OC中获取系相应目录的几种方法

//这里是app的Bundle的地址,获取的路径是你程序的安装路径下的资源文件位置 NSString *appPath =[[NSBundle mainBundle] bundlePath]; NSLog(@"%@",appPath); //这个方法能获取一个数组,数组里面印象中是2个路径,但是IOS只有一个,在IOS中使用的时候,直接用数组中的第一个即可,第一个参数为

2015-11-21 16:11:10 1200

转载 C,C++如何和OC混用

c和obj-c如何混用 1)obj-c的编译器处理后缀为m的文件时,可以识别obj-c和c的代码,处理mm文件可以识别obj-c,c,c++代码,但cpp文件必须只能用c/c++代码,而且cpp文件include的头文件中,也不能出现obj-c的代码,因为cpp只是cpp 2) 在mm文件中混用cpp直接使用即可,所以obj-c混cpp不是问题 3)在cpp中混用obj-c其实就是使用o

2015-11-20 23:59:56 1859

原创 KVC和KVO

KVC和KVO1.KVC: key for Coding,KVC,即是指NSKeyValueCoding,一个非正式的Protocol(协议),提供一种机制来间接访问对象的属性,而KVO是基于KVC的.KVC需要针对属性来说,比如一个类Student,它有属性name,一般来讲,所谓的key只是个字符串,一般比如Student属性name的key,那么就是@”name”,而它对应的值可以是任意类型的

2015-11-20 23:47:01 417

原创 1. #import和#include的区别以及@class

#import是针对#include的改进,可以确保引用的文件只被引用一次,这样就不会递归包含某个头文件,区别:#import会导入头文件的所有信息,包括所有的实例变量和方法等@class只是告诉编译器后面声明的是类的名称,不会产生编译冲突,一般用在头文件,而在实现文件中,需要用到类的各种方法和属性,所以需要#import

2015-11-20 18:48:12 366

原创 OC中私有方法和私有变量

OC中的类方法只有两种,静态方法和实例方法,按照面向对象的逻辑,只有有用的东西,才暴露在外部,在OC中,所有的实例默认都是私有的,所有的实例方法默认都是公有的,可能有人会问,不是有的属性直接就可以拿来用吗,但是,那是属性,不是实例变量.比如A类里面有个B类属性,我们在主界面中,定义了一个A类的实例变量,确实是可以用点语法来给A的B类属性赋值,但是其实并没有拿到这个B类对象,只是通过set方法来对A里

2015-11-20 18:38:39 771

原创 OC中实例方法和类方法的区别

实例方法:实例出的对象所用的方法,原理是向某个对象发送一条消息,如果对象中有相应的消息就会做出回应,OC用的就是这种消息模式.类方法:也叫静态方法,不需要申明一个对象,可以直接调用,一般是有返回值的,其主要作用就是返回一个对应的实例(如数组,字符串或者就是本类的一个对象等),

2015-11-20 17:49:01 1785

原创 OC的多继承

sorry,OC是没有多继承的,那么怎么办呢其实代理模式就相当于多继承,遵守了A类协议和B类协议的C类,可以调用A和和B的方法在C类中

2015-11-20 17:41:12 435

原创 IOS常用的设计模式以及对应的优势

IOS常用的一些设计模式如下:1.代理模式:常规如tableview,使用的就是代理模式,一般来说,本身特性需要用其他的类或者数据源来修改的时候,可以使用代理模式.它需要有一个 id<xxDelegate> 的属性,在别的对象里使用的时候,需要讲其他类设置为它的代理,并遵守协议(协议名也需要在本类中写好)才可以实现代理方法.这里相当于用到了多态,比如在代理方法里,不同的tableview,可以做不

2015-11-20 17:34:06 542

原创 单例模式

保证一个方法只会生成一个固定对象,例如IOS的UIApplication具体实现: +(id)sharedManager {static MyManager*sharedMyManager = nil;static dispatch_once_tonceToken; dispatch_once(&onceToken, ^{ sharedMyManager = [[self a

2015-11-20 17:10:13 380

原创 UIViewController的生命周期

视图控制器被创建,从屏幕上显示的时候,代码执行顺序如下1.alloc :创建这个控制器对象,并分配空间2. init (initWithNibName)初始化对象,初始化数据3. LoadView :载入nib的视图4. viewDidLoad : 载入完成,可以在这里用代码动态编写其他控件,只会在加载的时候执行一次,所以只能用来做初始化设置5. viewWillAppear : 视图将要出现在屏幕

2015-11-20 16:56:33 459

原创 内存管理,readwrite,readonly,assign,retain,copy,nonatomic,的作用以及深浅拷贝

1.内存管理机制当一个实例alloc以后,其引用计数器自动+1,在它引用到其他对象,或者超出作用域的时候,会自动减去1,此情况为ARC的情况,若MRC,需要手动retain和release,或者创建自动释放池来进行内存管理.2.readwrite,readonly,assign,retain,copy,nonatomic的区别readwrite:可读可写,默认属性,系统会生成setter和gette

2015-11-20 00:34:43 609

原创 OC的内存管理机制以及野指针问题

当一个对象创建,alloc之后,系统会分配一块只属于它自己的内存给它,它的引用计数器会+1,两个关键字retain和copy也会使用这个对象的引用计数器+1,如果在早期的手动内存管理,需要release,使其-1,release的对象,计数器为0,对象销毁,内存释放,这时,指针仍然指向了一个内存地址,但是是个垃圾内存,如果再使用这个对象,会崩溃,这样的指针称之为野指针,通常最好在计数器为0以后将指针

2015-11-19 23:41:47 462

原创 sourcetree的使用

1.注册git后,需要新建仓库repository,新建立的仓库对应会有地址.目前sourcetree的中文版本里面好像无法用客户端建立远程仓库,所有目前只有手动的在远程新建仓库并命名,另外需要配置gitignore,这个是忽略版本控制的配置,避免每次都提示要提交更新,选择对应语言即可,这里选择oc的2.需要建立一个本地仓库来存放自己的项目,一个文件夹即可,文件夹必须是空,在仓库管理(窗口—>仓库浏

2015-11-19 23:38:21 876

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-11-19 23:26:13 255

空空如也

空空如也

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

TA关注的人

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