block使用場(chǎng)景(1)-保存代碼

這篇文章主要記錄block保存代碼的用法。

本例子實(shí)現(xiàn)對(duì)不同 標(biāo)的 狀態(tài)的不同操作。

1.首先在BidCellitem.h模型類(lèi)中申明block

@property (nonatomic,strong)void(^selectbidcellBlock)();

2.在TableViewController.m的- (void)viewDidLoad方法中定義block(包含了數(shù)據(jù)源的方法)

- (void)viewDidLoad {

[super viewDidLoad];

for (NSInteger i ; i<20; i++) {

Bidtstaus staus = arc4random()%5;

BidCellitem *item = [BidCellitem itemWithBidtstaus:staus];

__weak typeof(item)Weakitem = item;

item.selectbidcellBlock = ^{

__strong typeof(Weakitem)StrongItem? = Weakitem;

NSString *message = [StrongItem.title stringByAppendingString:@"的控制器"];

UIAlertController *alertController =[UIAlertController alertControllerWithTitle:@"想去跳轉(zhuǎn)" message: message preferredStyle:UIAlertControllerStyleAlert];

UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"好的"style:UIAlertActionStyleDefault handler:nil];

[alertController addAction:okAction];

[self presentViewController:alertController animated:YES completion:nil];

};

[self.bidArr addObject:item];

}

}

在TableViewController.m的didSelectRowAtIndexPath方法中調(diào)用了block

if (item.selectbidcellBlock) {

item.selectbidcellBlock();

};

完整項(xiàng)目見(jiàn)https://github.com/youweikang/block-.git

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容