iOS开发技巧 -- 复用代码片段

原创 2013年06月20日 15:13:28

如果你是一位开发人员在开发过程中会发现有些代码无论是在同一个工程中还是在不同工程中使用率会很高,有经验的人会直接封装在一个类里,或者写成一个宏定义或者把这些代码收集起来,下次直接使用,或者放到xcode的代码片库里,直接使用, 从而提高开发效率;

1. 将常用代码片段封装成一个类里

当一个代码片在一个或多个工程之中经常出现时,把他封装在一个类里面,在使用时候直接传参即可实现对于功能,或者直接把这类放到另一个工程中同样使用;

使用UIAlertView举例

创建一个XF_UIKit类,对于声明文件和实现文件为

//
//  XF_UIKit.h
//  Demo
//
//  Created by DolBy on 13-6-17.
//  Copyright (c) 2013年 新风作浪. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface XF_UIKit : NSObject
+(void)showAlert:(NSString *)title withMessage:(NSString *)message witchCancelButtonTitle:(NSString *)cancelButtonTitle otherButtonTitles:(NSString *)otherButtonTitles, ... NS_REQUIRES_NIL_TERMINATION;
@end

//
//  XF_UIKit.m
//  Demo
//
//  Created by DolBy on 13-6-17.
//  Copyright (c) 2013年 新风作浪. All rights reserved.
//

#import "XF_UIKit.h"

@implementation XF_UIKit
+(void)showAlert:(NSString *)title withMessage:(NSString *)message witchCancelButtonTitle:(NSString *)cancelButtonTitle otherButtonTitles:(NSString *)otherButtonTitles, ... NS_REQUIRES_NIL_TERMINATION
{
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:message delegate:self cancelButtonTitle:cancelButtonTitle otherButtonTitles:otherButtonTitles, nil];
    [alert show];
    [alert release];
}
@end

使用的时候引入头文件直接调用类方法

- (void)viewDidLoad
{
    [super viewDidLoad];
    [XF_UIKit showAlert:@"警告" withMessage:@"新风作浪的测试 " witchCancelButtonTitle:@"OK" otherButtonTitles: nil];

	// Do any additional setup after loading the view, typically from a nib.
}



2.使用宏

iOS开发中那些高效常用的宏一文例举了宏的使用,此处不再赘述;


3.使用Xcode自带代码片段库

在属性面板下面有一栏库面板选择条,有一项Code Snippet Library有iOS下OS X   和 User(用户自定义的)代码片段存储



(1)在这些库里有系统自带的代码片段,使用的时候直接拖到工程里,填上参数即可使用。

(2)用户自定义代码块,这也是本文讲解的重点。例如:

做过开发的都知道使用表示图单元格比较频繁,经常频繁写他们的delegate方法,如果把它们收集起来

#pragma mark -
#pragma mark UITableViewDataSource and UITableViewDelegate Methods

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
   
    return 1;
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    
   
    return 10;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    }
    return cell;
}

这是绘制一个基本表示图单元必须实现的协议方法,全选这些代码拖到Code Snippet Library里面,如下图


然后会弹出一个编辑框,然后进行一个简单编辑,title表示你这个代码块标题,Summary 对这段代码片的简单介绍,Completion Shortcut表示一个快捷键,在我们工程中只要输入快捷键就可以显示整段代码片;



相应设置



把参数放在两个#号之间,比如 #参数#



编辑完毕选择Done,在User下即可看到TbaleView代码块



在使用的时候两种方式

①直接把这个代码块拖到工程中;

②在工程里面输入自己设置的快件建代码,比如刚刚设置的XFTableView,真个代码块全部出现;



在资源库(Libary)/Developer/Xcode/UserData/CodeSnippets下存放的就是你自定义的代码片段,如果重装Xcode记得备份哦!




原创博客欢迎转载分享,请注明出处http://blog.csdn.net/duxinfeng2010



iOS开发技巧 -- 复用代码片段

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://duxinfeng.blog.51cto.com/3911492/1225867 ...
  • sunyazhou13
  • sunyazhou13
  • 2013年12月02日 09:12
  • 467

IOS 复用代码片段

1.当一个代码片在一个或多个工程之中经常出现时,把他封装在一个类里面,在使用时候直接传参即可实现对于功能,或者直接把这类放到另一个工程中同样使用; 将代码片段拖到右侧花括号下2.会出现带Us...
  • u010742414
  • u010742414
  • 2015年05月05日 12:55
  • 317

iOS 如何实现View的复用(以访问相册为例)

原创Blog,转载请注明出处 http://blog.csdn.net/hello_hwc?viewmode=list 欢迎关注我的iOS SDK详解专栏 http://blog.csdn.ne...
  • Hello_Hwc
  • Hello_Hwc
  • 2015年09月21日 13:41
  • 2048

iOS开发之UI学习-UITableView的复用机制

通过代码的形式让你快速理解表视图的单元格重用问题既复用机制。 在表视图显示的时候,会创建 (视图中可看的单元格个数+1)个单元格,一旦单元格因为滑动的而消失在我们的视野中的时候,消失的单元格就会进入缓...
  • wuzesong
  • wuzesong
  • 2016年08月16日 22:46
  • 1393

ios-单元格复用

1、创建单元格的几种方式 a)  通过UITableViewCell固定格式设置,其属性是imageView, textLabel、detailLabel,但它们的样式固定,且通常来说不易改变它们的...
  • A_Studystudy
  • A_Studystudy
  • 2016年07月22日 13:18
  • 521

ios 关于tableview的复用问题,避免假复用

自从开始做ios开发,自己开发了很多客户端,也看到很多别人写的程序,发现很多人在做程序的时候走入了很多误区,比如tableview的复用,tableview的复用是为了解决大量数据的内存管理问题,优化...
  • changcongcong_ios
  • changcongcong_ios
  • 2016年11月30日 11:38
  • 8001

iOS开发技巧之code snippets(代码片段)

一、什么是代码片段 当在Xcode中输入dowhile并回车后,Xcode会出现下图所示的提示代码: 这就是代码片段,目的是使程序员以最快的速度输入常用的代码片段,提高编程效率...
  • Bruce__Liu
  • Bruce__Liu
  • 2015年10月17日 23:50
  • 385

用flask开发个人博客(11)—— 模板中代码的重复使用

一、宏的引用 上节介绍过将宏保存到单独的html文件中,并重复引用的语法: {% import ‘macros.html’ as macros %} {% for comment in commen...
  • lzhui1987
  • lzhui1987
  • 2016年09月20日 22:44
  • 1545

iOS 关于UITableViewCell复用机制的理解

先说一句题外话,Apple官方建议不要在scrollview中嵌套scrollview。tableview也是scrollview的一种,不到万不得已时不要将它嵌到scrollview中。 我们回到正...
  • worldzhy
  • worldzhy
  • 2014年12月26日 23:45
  • 23128

XIB 复用自定义视图

一般情况下我们直接通过`loadNibNamed:owner:options:`代码调用复用XIB_Reuse,把得到视图再手写代码布局到指定XIB视图上,那么可不可以把XIB_Reuse嵌入XIB里...
  • tearscf
  • tearscf
  • 2015年08月04日 10:20
  • 1162
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS开发技巧 -- 复用代码片段
举报原因:
原因补充:

(最多只允许输入30个字)