我正在使用iOS 5.0應用程序,我想知道是否有更「優雅」的方式來處理點擊取消按鈕。在文檔中似乎沒有任何內容,所以我認爲答案是「否」。從UIActionSheet中處理取消按鈕的更優雅方式?
基本上我有一個UIActionSheet,目前有2個按鈕和取消按鈕。前兩個按鈕做他們應該正是基於我的代碼做
-(void)actionSheet:(UIActionSheet *)actionsheet clickedButtonAtIndex:(NSInteger)buttonIndex
前兩個按鈕依賴於某些相同的變數,但是,這取決於被點擊,他們瓶坯不同的動作。這些變量在上述方法的switch語句之外被實例化,然後在case內部作用。取消按鈕並不依賴任何這些變量(顯然),所以爲了避免所有的實例化,我把所有這些代碼包裝在if語句中,以測試Cancel按鈕索引。
這並不理想。如果我將新按鈕添加到操作表中,我必須記住更新if語句。代碼本身看起來總是很混亂。我可以編寫一個新的方法來處理前兩個按鈕的點擊邏輯,但是如果有一種方法可以通過取消按鈕簡單地關閉ActionSheet來阻止clickedButtonAtIndex方法被調用,那麼這種方法不會太過分。
所以這是我的問題:有沒有辦法在沒有調用該方法的情況下關閉ActionSheet?