日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS初级开发笔记:Block回调,实现简单的绑定支付宝逻辑

發布時間:2025/7/14 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS初级开发笔记:Block回调,实现简单的绑定支付宝逻辑 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

綁定支付寶首頁和填寫資料綁定頁之間,

需要在填寫頁填寫好手機號,驗證碼等,點擊確認綁定后跳回到綁定首頁。并且綁定按鈕變為已綁定按鈕,暫未綁定label變為輸入的支付寶賬號。并且點擊已綁定按鈕會跳轉到解綁界面。

整個流程在app上展示為

一、在傳信息的controller內(即填寫頁的controller內)創建Block:

fillAlipayViewController.h中:

// 創建block typedef void(^bindAlipayBlock)(NSDictionary *bindDict);// 監聽返回的綁定狀態 @property (nonatomic, copy) bindAlipayBlock returnBlock; 復制代碼
  • 這里解釋一下創建語句:

    • 我們可以通過關鍵字typedef來為block起類型名稱,然后直接通過類型名進行block的創建;
    • void為返回值;
    • ^bindAlipayBlock為block名稱;
    • NSDictionary *bindDict為參數。
  • 因為需要傳兩個值(支付寶號和綁定狀態),所以創建類型是字典,命名也要明確Block是什么類型:

(NSDictionary *bindDict) 復制代碼

fillAlipayViewController.m中:

需創建全局變量:_alipayAccount即為監聽輸入的支付寶賬號全局變量。支付寶賬號為字符串:

{NSString *_alipayAccount;//支付寶賬號 } 復制代碼

在輸入完成后點擊確認的點擊事件中,確定若響應Block實例,則傳出字典,字典內寫相應的鍵值,(即將綁定YES狀態和支付寶賬號傳出去):

if (self.returnBlock){self.returnBlock(@{@"isBind":@"YES",@"alipayAccount":self->_alipayAccount}); } 復制代碼

接著下面是返回上一頁綁定首頁語句:

[self.navigationController popViewControllerAnimated:YES]; 復制代碼

二、在接收信號的controller內(即綁定首頁的controller內):

bindAlipayViewController.m中:

創建對應全局變量來接收值:

{BOOL _isBind;//綁定狀態NSString *_bindAlipayAccount;//綁定的支付寶賬號 }復制代碼

跳轉方法的實現中:

- (void)jumpToControllerWithType:(NSString *)type{if([type intValue]== 1){ABFillAlipayViewController *vc=[[ABFillAlipayViewController alloc]init];WS(weakself);vc.returnBlock = ^(NSDictionary *bindDict) {NSLog(@"返回了~");// 綁定狀態判斷self->_isBind = [bindDict[@"isBind"] isEqualToString:@"YES"]?YES:NO;// 支付寶賬號賦值self->_bindAlipayAccount = bindDict[@"alipayAccount"]; // 刷新tableView中數據[weakself.tableView reloadData];};[self.navigationController pushViewController:vc animated:YES];}else if([type intValue]== 2){[self.navigationController pushViewController:[[ABRemoveBindAlipayViewController alloc]init] animated:YES];} } 復制代碼

_isBind做判斷,等于字符串@“YES”的時候為YES,否則NO。

_bindalipayAccount就等于字典傳過來的值。

因為綁定首頁使用tableView畫的,所以在cell內容中判斷,若綁定成功,則做相應改變賦值:

if (_isBind == YES) {// 綁定按鈕隱藏,顯示已綁定按鈕cell.bindButton.hidden = YES;cell.boundButton.hidden = NO;// 顯示支付寶賬號cell.subLabel.text = _bindPhoneNumber; }else{// 綁定按鈕顯示,隱藏已綁定按鈕cell.bindButton.hidden = NO;cell.boundButton.hidden = YES;// 顯示“暫未綁定賬號”cell.subLabel.text = @“暫未綁定賬號”;} 復制代碼

作者介紹

  • 李鴻:廣州蘆葦科技 APP 團隊 iOS 開發工程師

內推信息

  • 我們正在招募小伙伴,有興趣的小伙伴可以把簡歷發到 app@talkmoney.cn,備注:來自掘金社區
  • 詳情可以戳這里--> 廣州蘆葦信息科技

總結

以上是生活随笔為你收集整理的iOS初级开发笔记:Block回调,实现简单的绑定支付宝逻辑的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。