IOS開發技術之合理利用類的類別

2021-07-07 01:56:21 字數 2234 閱讀 6106

有一段時間沒寫部落格了,太忙了最近,但是我還是盡量抽時間去完成自己的部落格歷程,哈哈,今天就說說在專案中常用的技巧之一:合理使用類的類別去優化自己的**結構。

所謂合理,顧名思義就是根據自己的需要用合適的方案去解決一些**重複問題。如果在專案開發中,我們大量的使用某個類的一些屬性方法,此時我們不妨考慮一下使用類的類別來進行優化,這樣會簡化很多任務作。

舉個例子,我們在開發中,一定會去建立一些模型,來封裝一些網路資料,每次都是重複的工作去設定對應的key與value,想想都煩(起碼我是挺煩的),後來也算是找尋各種方案吧,最後還是覺得將這些屬性值的設定封裝在類中,並將其放在nsobject類別中是最方便的,使用的時候,直接去匯入擴充套件,直接就能用了,豈不很好。好了,原理大概就這樣,我們來去實現它:

先定義類別:

//

// nsobject+model.h

// roundcornersdemo

//// created by lee on 15-11-9.

//#import

@inte***ce

nsobject (model)

+ (instancetype)objectfordict:(nsdictionary *)dict;

- (instancetype)initwithdict:(nsdictionary *)dict;

@end

//

// nsobject+model.m

// roundcornersdemo

//// created by lee on 15-11-9.

//#import "nsobject+model.h"

@implementation

nsobject (model)

+ (instancetype)objectfordict:(nsdictionary *)dict

- (instancetype)initwithdict:(nsdictionary *)dict

return

self;

}@end

同時我還設定了乙個切圓角的擴充套件類方便切圓角

//

// uiview+roundcorner.h

// roundcornersdemo

//// created by lee on 15-11-8.

//#import

@inte***ce

uiview (roundcorner)

- (void)cliptoround:(cgfloat )cornersize;

@end

//

// uiview+roundcorner.m

// roundcornersdemo

//// created by lee on 15-11-8.

//#import "uiview+roundcorner.h"

@implementation

uiview (roundcorner)

- (void)cliptoround:(cgfloat )cornersize

@end

使用的時候我們只需要匯入擴充套件標頭檔案,然後就可以直接用了,如下

//

// viewcontroller.m

// roundcornersdemo

//// created by lee on 15-11-8.

//#import "viewcontroller.h"

#import "uiview+roundcorner.h"

#import "nsobject+model.h"

#import "ticketmodel.h"

@inte***ce

viewcontroller ()

@end

@implementation

viewcontroller

- (void)viewdidload

- (void)createmodel

- (void)cliptoround

- (void)didreceivememorywarning

@end

這種思想是不是挺方便的,哈哈,總之如果以後經常用到的一些方法,我們不妨將其封裝在類的類別中,這樣就很方便的進行使用了,儘管很簡單,但是卻大大提高了程式的簡潔性。

iOS類的合理設計,物件導向思想

每天更新的東西可能有反覆的內容。當時每一部分的知識點是不同的,須要大家認真閱讀 這裡介紹了ios類的合理設計。物件導向思想 main.m import import iphone.h int main int argc,const char ar iphone.h inte ce iphone ns...

IOS開發UI系列之UIView類的常用屬性與方法

檢視 uiview 繼承於uireponser 1.建立方法 uiview view uiview alloc initwithframe frame frame cgrectmake origini.x,origin.y,size.width,size.height 2.常用屬性 背景顏色 vie...

iOS開發 時間格式類

目前只實現了三個類方法,第乙個獲取當前時間,以字元創的形式返回,例如 201606161532 第二個以當前時間與給定時間的時間差 秒 第三個以當前時間與給定時間的時間差 分 h檔案 timehelper.h zipeiyi created by 劉成利 on 16 6 14.import inte...