iOS開發技巧 -- 複用代碼片斷

       若是你是一位開發人員在開發過程當中會發現有些代碼不管是在同一個工程中仍是在不一樣工程中使用率會很高,有經驗的人會直接封裝在一個類裏,或者寫成一個宏定義或者把這些代碼收集起來,下次直接使用,或者放到xcode的代碼片庫裏,直接使用, 從而提升開發效率;xcode

1. 將經常使用代碼片斷封裝成一個類裏

當一個代碼片在一個或多個工程之中常常出現時,把他封裝在一個類裏面,在使用時候直接傳參便可實現對於功能,或者直接把這類放到另外一個工程中一樣使用;ide

使用UIAlertView舉例測試

建立一個XF_UIKit類,對於聲明文件和實現文件爲spa


//
//  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開發中那些高效經常使用的宏一文例舉了宏的使用,此處再也不贅述;.net


3.使用Xcode自帶代碼片斷庫

在屬性面板下面有一欄庫面板選擇條,有一項Code Snippet Library有iOS下OS X   和 User(用戶自定義的)代碼片斷存儲code



(1)在這些庫裏有系統自帶的代碼片斷,使用的時候直接拖到工程裏,填上參數便可使用。

(2)用戶自定義代碼塊,這也是本文講解的重點。例如:

作過開發的都知道使用表示圖單元格比較頻繁,常常頻繁寫他們的delegate方法,若是把它們收集起來blog

#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表示一個快捷鍵,在咱們工程中只要輸入快捷鍵就能夠顯示整段代碼片;ip



相應設置資源



把參數放在兩個#號之間,好比 #參數#開發



編輯完畢選擇Done,在User下便可看到TbaleView代碼塊



在使用的時候兩種方式

①直接把這個代碼塊拖到工程中;

②在工程裏面輸入本身設置的快件建代碼,好比剛剛設置的XFTableView,真個代碼塊所有出現;



在資源庫(Libary)/Developer/Xcode/UserData/CodeSnippets下存放的就是你自定義的代碼片斷,若是重裝Xcode記得備份哦!

相關文章
相關標籤/搜索