@ Яр, спасибо за ответ, я попробую ваше решение в другой раз.
Но я также удовлетворен своим текущим решением. 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;
Так что я думаю, что нажатие на любую кнопку всегда будет отклонять лист действий.Тогда мое решение - сначала скрыть индикатор выполнения;когда пользователь нажимает кнопку загрузки, снова показывает лист действий, но скрывает кнопку загрузки и показывает индикатор выполнения.
Кнопка отмены всегда присутствует в случае, если пользователь хочет отменить загрузку даже после ее начала.