2011-12-26 44 views
0

我向我的UIActionSheet添加了一個UIProgressView來指示下載進度。所以我不希望我的UIActionSheet在用戶點擊下載按鈕時被解僱。有什麼辦法可以防止UIActionSheet在用戶點擊按鈕時被解僱?

但是有沒有辦法做到這一點?

現在我執行didDismissWithButtonIndex委託方法在被解僱後再次顯示UIActionSheet。但我希望有更好的辦法。

+1

你可以請張貼一些代碼的行動表查看或隱藏? – Hiren

+0

請發佈您的代碼,以便我們知道您已經實施了什麼 – Leena

回答

2

UIActionSheet是一個模態視圖,這意味着它完全阻止了UI。由於阻止用戶界面被認爲是不好的做法,因此不支持禁止用戶撤銷操作表。相反,您應該在操作表之外製定一個完全獨立的進度指示器。

+0

不,我沒有完全阻止它。它仍然具有取消按鈕UIActionSheet應該。用戶可以通過點擊取消按鈕來解除UIActionSheet。當用戶點擊下載按鈕時,我只是不希望它被解僱。 – Qiulang

+0

iOS 8不會讓你這樣做。而你的話「你應該在行動表之外製定一個完全獨立的進度指標。」從一開始就是正確的。謝謝! – Qiulang

0

@Yar,感謝您的回答,我會在其他時間嘗試您的解決方案。

但我對目前的解決方案也很滿意。 UIActionSheet.h

// Called when a button is clicked. **The view will be automatically dismissed after this call returns** 
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex; 

,所以我想打任何按鈕,將永遠開除動作片。然後我的解決方案是先隱藏進度條;當用戶點擊下載按鈕時,再次顯示操作表,但隱藏下載按鈕並顯示進度條。

取消按鈕始終存在,以防用戶想要在下載開始後取消下載。

相關問題