Block(塊)介紹之二:Block的簡單使用

前言:定義Block時(shí)侦副,可以對(duì)Block的輸入?yún)?shù)以及返回值的類型進(jìn)行定義侦锯。可以有輸入?yún)?shù)秦驯,也可以沒有輸入?yún)?shù)率触;可以設(shè)置一個(gè)輸入?yún)?shù),也可以設(shè)置多個(gè)參數(shù);可以有返回值葱蝗,也可以沒有返回值。

1细燎、無輸入?yún)?shù)+無返回值

這種形式的Block两曼,無需任何輸入?yún)?shù),并且無返回值玻驻,一般都是在該Block中完成一些動(dòng)作悼凑,例如在完成一段動(dòng)畫后,執(zhí)行一段Block璧瞬,如下所示:

@interfaceUIView(UIViewAnimationWithBlocks)

+(void)animateWithDuration:(NSTimeInterval)duration animations:(void(^)(void))animations;

我們也可以自定義一個(gè)無輸入?yún)?shù)户辫、無返回值的Block,如下所示:

void(^blockWithOutInputAndOutput)(void)=^(void){

NSLog(@"block Called!");

};

2嗤锉、有輸入?yún)?shù)+無返回值

這種形式的Block渔欢,有輸入?yún)?shù),但無返回值瘟忱。一般都是在該Block中根據(jù)輸入?yún)?shù)完成一些動(dòng)作奥额,例如,在AFNetworking中访诱,當(dāng)獲取到網(wǎng)絡(luò)反饋的數(shù)據(jù)后垫挨,會(huì)調(diào)用一個(gè)Block,并且把從服務(wù)器獲取的數(shù)據(jù)作為參數(shù)触菜,傳入Block九榔。

-(AFHTTPRequestOperation*)POST:(NSString*)URLString

parameters:(id)parameters

success:(void(^)(AFHTTPRequestOperation*operation,id responseObject))success

failure:(void(^)(AFHTTPRequestOperation*operation,NSError*error))failure

{

AFHTTPRequestOperation*operation=[selfHTTPRequestOperationWithHTTPMethod:@"POST"URLString:URLStringparameters:parameters success:success failure:failure];

[self.operationQueue addOperation:operation];

returnoperation;

}

我們也可以自定義一個(gè)有輸入?yún)?shù)、無返回值的Block涡相,如下所示:

void(^blockWithInput)(int)=^(intinputNum){

NSLog(@"blockWithInput Called!");

};

3哲泊、有輸入?yún)?shù)+有返回值

Block定義

int(^blockWithOutputAndInput)(int)=^(intinputNum){

NSLog(@"blockWithOutputAndInput Called!");

returninputNum;

};

Block調(diào)用

intintNumber2=blockWithOutputAndInput(200);

NSLog(@"blockWithOutputAndInput:%d",intNumber2);

4、有多個(gè)輸入?yún)?shù)

可以在Block定義中傳入多個(gè)參數(shù)漾峡。

Block的定義

double(^multiplyTwoValues)(double,double)=^(doublenumber1,doublenumber2){

returnnumber1*number2;

};

Block的調(diào)用

doubledoubleNumber=multiplyTwoValues(5.0,5.6);

NSLog(@"multiplyTwoValues: %f",doubleNumber);

5攻旦、無輸入?yún)?shù)+有返回值

Block的定義

int(^blockWithOutput)(void)=^(void){

NSLog(@"blockWithOutput Called!");

return100;

};

Block的調(diào)用

intintNumber1=blockWithOutput();

NSLog(@"blockWithOutput:%d",intNumber1);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市生逸,隨后出現(xiàn)的幾起案子牢屋,更是在濱河造成了極大的恐慌,老刑警劉巖槽袄,帶你破解...
    沈念sama閱讀 222,627評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件烙无,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡遍尺,警方通過查閱死者的電腦和手機(jī)截酷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,180評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來乾戏,“玉大人迂苛,你說我怎么就攤上這事三热。” “怎么了三幻?”我有些...
    開封第一講書人閱讀 169,346評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵就漾,是天一觀的道長。 經(jīng)常有香客問我念搬,道長抑堡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,097評(píng)論 1 300
  • 正文 為了忘掉前任朗徊,我火速辦了婚禮首妖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘爷恳。我一直安慰自己有缆,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,100評(píng)論 6 398
  • 文/花漫 我一把揭開白布舌仍。 她就那樣靜靜地躺著妒貌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪铸豁。 梳的紋絲不亂的頭發(fā)上灌曙,一...
    開封第一講書人閱讀 52,696評(píng)論 1 312
  • 那天,我揣著相機(jī)與錄音节芥,去河邊找鬼在刺。 笑死,一個(gè)胖子當(dāng)著我的面吹牛头镊,可吹牛的內(nèi)容都是我干的蚣驼。 我是一名探鬼主播,決...
    沈念sama閱讀 41,165評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼相艇,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼颖杏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起坛芽,我...
    開封第一講書人閱讀 40,108評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤留储,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后咙轩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體获讳,經(jīng)...
    沈念sama閱讀 46,646評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,709評(píng)論 3 342
  • 正文 我和宋清朗相戀三年活喊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了丐膝。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,861評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖帅矗,靈堂內(nèi)的尸體忽然破棺而出偎肃,到底是詐尸還是另有隱情,我是刑警寧澤损晤,帶...
    沈念sama閱讀 36,527評(píng)論 5 351
  • 正文 年R本政府宣布软棺,位于F島的核電站,受9級(jí)特大地震影響尤勋,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜茵宪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,196評(píng)論 3 336
  • 文/蒙蒙 一最冰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧稀火,春花似錦暖哨、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,698評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至赡若,卻和暖如春达布,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背逾冬。 一陣腳步聲響...
    開封第一講書人閱讀 33,804評(píng)論 1 274
  • 我被黑心中介騙來泰國打工黍聂, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人身腻。 一個(gè)月前我還...
    沈念sama閱讀 49,287評(píng)論 3 379
  • 正文 我出身青樓产还,卻偏偏與公主長得像,于是被迫代替她去往敵國和親嘀趟。 傳聞我的和親對(duì)象是個(gè)殘疾皇子脐区,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,860評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)她按,斷路器牛隅,智...
    卡卡羅2017閱讀 134,716評(píng)論 18 139
  • 國家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說閱讀 11,010評(píng)論 6 13
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,325評(píng)論 25 707
  • 看來我錯(cuò)了,我們之中又一個(gè)人通過死來證明自己是無辜的---又遲了一步
    CNBLUEone閱讀 160評(píng)論 0 0
  • 該書中提到建設(shè)型商業(yè)和傳統(tǒng)商業(yè)尤溜,在市場(chǎng)選擇上有一個(gè)重要差異倔叼。 傳統(tǒng)商業(yè)是保護(hù)市場(chǎng)擊敗對(duì)手導(dǎo)向的,而建設(shè)型商業(yè)則是市...
    吳少杰1988閱讀 203評(píng)論 0 0