iOS
IOS_zyl
这个作者很懒,什么都没留下…
展开
-
iOS 的一种设计模式 类别 catagory
类别 类别是一种为现有的类添加新方法的方式。 利用Objective-C的动态运行时分配机制,可以为现有的类添加新方法,这种为现有的类添加新方法的方式称为类别catagory,他可以为任何类添加新的方法,包括那些没有源代码的类。 类别使得无需创建对象类的子类就能完成同样的工作 一、创建类别 1、声明类别 声明类别与声明类的形式很相似 @interface NSString(转载 2015-09-01 11:26:02 · 540 阅读 · 0 评论 -
防止按钮的重复点击导致的请求的重复响应
在请求方法里首先设置按钮不可点击,当请求回调时按钮设置为可用即可原创 2015-12-24 14:53:02 · 775 阅读 · 0 评论 -
iOS 单例模式 + NSUserDefaults
http://yulingtianxia.com/blog/2014/04/07/iosdan-li-mo-shi-ornsuserdefaults/ 本文内容: iOS的单例模式NSUserDefaults的使用总结:iOS单例模式 and NSUserDefaults iOS的单例模式 提起单例模式大家都不陌生,什么懒汉式,饿汉式,老汉式。。。扯远了 一开转载 2015-10-16 10:28:58 · 379 阅读 · 0 评论 -
oc实现多继承
我们都知道objective C不能像C++一样支持多继承,但是在OC的使用经常会碰到需要使用多继承的情况。例如,ClassA中有methodA,ClassB中methodB,而现在需要使用这两个类中的方法。如何按照C++的编程思路,毫无疑问采用多继承就搞定了,在OC就需要动动脑子了。 其实我们在学习设计模式的时候知道,多继承的效率不高,而且采用组合的模式可以完全代替继承模式。那转载 2015-09-29 14:51:52 · 597 阅读 · 0 评论 -
instancetype和id的异同
instancetype和id的异同1、相同点都可以作为方法的返回类型2、不同点①instancetype可以返回和方法所在类相同类型的对象,id只能返回未知类型的对象;②instancetype只能作为返回值,不能像id那样作为参数原创 2015-09-07 13:55:04 · 429 阅读 · 0 评论 -
tableview 在重用时如何避免内容重复
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeu原创 2015-09-06 14:26:45 · 422 阅读 · 0 评论 -
UITableView的重用机制(缓存机制)
UITableView的重用机制 UITableView通过重用单元格来达到节省内存的目的:通过为每个单元格指定一个重用标识符(reuseIdentifier),即指定了单元格的种类,以及当单元格滚出屏幕时,允许恢复单元格以便重用.对于不同种类的单元格使用不同的ID,对于简单的表格,一个标识符就够了. 假如一个TableView中有20个单元格,但是屏幕上最多能显示12个,那么转载 2015-09-06 13:54:38 · 1185 阅读 · 0 评论 -
iOS KVC & KVO
Key Value Coding Key Value Coding是cocoa的一个标准组成部分,它能让我们可以通过name(key)的方式访问property, 不必调用明确的property accssor, 如我们有个property叫做foo, 我们可以foo直接访问它,同样我们也可以用KVC来完成[Object valueForKey:@“foo”], 有同学就会问了, 这样做有什转载 2015-09-07 11:10:23 · 309 阅读 · 0 评论 -
iOS 登录与注册的界面跳转
有两种方法 1.主要是根据情况设置谁为window.rootViewcontroller的问题。在appdelegate.h文件中监听通知,登录与退出。在默认加载时window.rootViewcontroller 设置为登录的viewcontroller。当登录成功后发送通知,在appdelegate中接收通知,将修改window.rootViewController为uitabbarcontr转载 2015-09-09 14:43:01 · 5383 阅读 · 0 评论 -
封装
面向对象的三大特性:封装(成员变量)、继承和多态 在OC语言中,使用@interface和@implementation来处理类。 @interface就好像暴露在外面的时钟表面,像外界提供展示以及接口。@implementation就好像隐藏在时钟内部的构造实现,把具体的实现封装了起来。转载 2015-09-01 14:52:28 · 287 阅读 · 0 评论 -
多态
三、多态 多态对于面向对象思想来说,个人感觉是真的很重要,他对以后的编写代码的优雅方式也是起到很重要的作用,其实现在很多设计模式中大部分都是用到了多态的特性,Java中的多态特性用起来很是方便的,但是C++中就很难用了,其实多态说白了就是:定义类型和实际类型,一般是基于接口的形式实现的,不多说了,直接看例子吧: 打印机的例子 抽象的打印机类Printer Printer.h转载 2015-09-01 15:08:25 · 329 阅读 · 0 评论 -
进程与线程
一个进程就代表着一个程序的开启,线程是进程的基本工作单元,一个进程至少要有一个线程,为了提高cpu的工作效率有时候我们需要多个线程并发工作,但是并行线程过多会对cpu的耗损比较大(程序的主线程一般是指ui线程,主要负责更新ui,一些耗时操作我们应该放到支线程,以免导致程序出现卡顿现象),进程有自己单独的内存空间 多线程之间共享进程的内存资源。(个人随笔,如有不到之处,敬请指点。。。)原创 2016-04-15 11:50:32 · 357 阅读 · 0 评论