iOS UIButton響應傳引數

2022-03-29 06:13:29 字數 1229 閱讀 4629

- (void)addtarget:(id

)target action:(sel)action forcontrolevents:(uicontrolevents)controlevents;

方法是無法傳引數的,能得到的只是響應的uibutton。下面我們來學習一下如何通過uibutton來「傳引數」。 我們以uitableview 為例,在uitableviewcell中定義乙個cell,我們稱之為customcell,cell上加有乙個uibutton的控制項。我們要做的是如何在點選uibutton時獲得cell。可以通過以下兩種方法實現。

1. 使用delegate 首先,在customcell類檔案中定義protocol,有如下定義

@protocol

customcellprotocol

- (void)customcell:(customcell *)cell didtapbutton:(uibutton *)button;

@end

將uibutton的響應加在customcell檔案中,比如這個響應叫做

- (ibaction)buttontarget:(id

)sender;

那麼在點選button時,就會呼叫這個方法。這個方法可以實現如下,

- (ibaction)buttontarget:(id

)sender

} 然後在uiviewcontroller裡實現**方法,這樣,就能獲得這個uibutton所在的uitableviewcell。

2. 在viewcontroller中新增響應 第二種方法時在

- (uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath;

方法中直接給uibutton新增響應。實現如下,

-(uitableviewcell *)tableview:(uitableview *)atableview cellforrowatindexpath:(nsindexpath *)indexpath

那麼點選button時就會呼叫

- (void)didtapbutton:(uibutton *)sender

剩下的就是如何通過這個sender獲得它所在的cell。我們這麼實現這個方法,

- (void)didtapbutton:(uibutton *)sender

}}

vue傳參,元件之間傳參 路由傳參 vuex

詳見 兩種情況 params 和 query 都可以在目標元件的生命週期裡,通過 this.route 進行獲取 例 首頁中精選主題的路由傳參 精選主題 1 簡單舉例 a 一般會新建 store 資料夾,在 index.js 初始化 vuex b 在 main.js 中,引入 c 例如,在我的頁面修...

params傳參和query傳參

params傳參 this.router.push query傳參 this.router.push 1 用法上的 query要用path來引入,params要用name來引入,接收引數都是類似的,分別是this.route.query.name和this.route.params.name。注意接...

params傳參和query傳參

當你使用params方法傳參的時候,要在路由後面加引數名,並且傳參的時候,引數名要跟路由後面設定的引數名對應。使用query方法,就沒有這種限制,直接在跳轉裡面用就可以。注意 如果路由上面不寫引數,也是可以傳過去的,但不會在url上面顯示出你的引數,並且當你跳到別的頁面或者重新整理頁面的時候引數會丟...