我有一個按鈕,一旦用戶提交表單,按鈕圖像應該變爲DONE.PNG
,否則它將保持爲SUBMIT.PNG
。如何識別哪個按鈕被點擊
我需要知道以下; 1)我們如何編寫一個方法來知道用戶點擊了哪個按鈕。 (如果他點擊的時候有它的DONE.PNG
或SUBMIT.PNG
圖像按鈕)
我的按鈕單擊事件是-(void)buttonClicked : (id)sender {}
我有一個按鈕,一旦用戶提交表單,按鈕圖像應該變爲DONE.PNG
,否則它將保持爲SUBMIT.PNG
。如何識別哪個按鈕被點擊
我需要知道以下; 1)我們如何編寫一個方法來知道用戶點擊了哪個按鈕。 (如果他點擊的時候有它的DONE.PNG
或SUBMIT.PNG
圖像按鈕)
我的按鈕單擊事件是-(void)buttonClicked : (id)sender {}
當你使用一個按鈕,只有改變自己的形象,再有,你可以遵循兩個簡單的方法:
檢查按鈕的圖像的名字,如果它DONE.PNG
然後做什麼需要並改變圖像,反之亦然。
有一個變量,你可以採取整數(它會幫助你,如果你有更多的圖像變化在同一個按鈕)跟蹤按鈕狀態/圖像。
例如,我們將typedef buttonState
,並檢查它的合適情況。
在.h
文件
typedef enum
{
ButtonStateDone = 1,
ButtonStateSubmit,
//any other state that it may have.
} ButtonState
//接口
聲明..
ButtonState buttonState;
//它,我們將使用一個類級別的變量來跟蹤按鈕狀態。
在.m
文件
最初設定buttonState爲你展示它的初始視圖。假設按鈕顯示完成。PNG 所以buttonState = ButtonStateDone;
現在
,在按鈕動作,你將改變這個
if(buttonState == ButtonStateDone)
{
//do something and change button state.
}
if(buttonState == ButtonStateSubmit)
{
//do something and change button state.
}
在這裏,我用typedef
,如果您需要爲按鈕超過2個州否則你可以簡單地使用它是有用的BOOL
變量。
通常你會設置的UIButton的標籤。
- 在關於UIButton元素的信息下進行的接口或故事板。
-Programatically你這樣做:myButton.tag = 23;
然後在buttonClicked你這樣做:
UIButton* senderButton = (UIButton*) sender;
if(senderButton.tag==23) {
// It's the button as submit
// Set button image
senderButton.tag = 5;
}
if(senderButton.tag==5) {
// Button is done
}
希望你得到它的工作:)
您可以將標籤添加到該按鈕,即NSInteger的buttonTag = [發送方標籤],然後必須條件語句來檢查標記值以確定哪個按鈕被點擊。
是否有任何其他方式,我可以做到這一點,而不使用標籤 – shajem 2012-03-10 19:06:41
是否有任何其他方式我可以做到這一點,而不使用標籤 – shajem 2012-03-10 19:12:43