Вы должны добавить UIActivityIndicatorView в верхней части иерархии представлений, иначе он будет отклонен с помощью UIPickerViewController, если вы не используете обратный вызов после операции изменения размера, а в обратном вызове вы отклоняете UIImagePickerController.
Или вы могли бы использовать прогресс HUD как SVProgressHUD.
Надеется, что это помогает =)
Мы сделали небольшой сеанс чата и решить таким образом:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
dispatch_async(dispatch_get_main_queue(), ^{
UIView *primaryImage = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,460)];
primaryImage.backgroundColor = [UIColor redColor];
primaryImage.alpha =0.9;
UIView *secondaryImage = [[UIView alloc] initWithFrame:CGRectMake(0,0,70,70)];
secondaryImage.center = CGPointMake(160, 240);
secondaryImage.backgroundColor = [UIColor blackColor];
secondaryImage.alpha = 0.9;
secondaryImage.layer.cornerRadius = 12;
[primaryImage addSubview:secondaryImage];
UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0, 0, 25, 25)];
indicator.center = CGPointMake(35, 35);
[indicator setHidesWhenStopped:NO];
[secondaryImage addSubview:indicator];
[indicator startAnimating];
[indicator release];
[secondaryImage release];
[picker.view addSubview:primaryImage];
[primaryImage release];
});
// Put here the code to resize the image
dispatch_async(dispatch_get_main_queue(), ^{
// Dismiss the picker controller
});
});
Да, я положил его на вершине иерархии зрения, но это не обнаруживалось, до увольнения анимированного периода. Вот что я имею в виду: «он будет уволен с помощью UIPickerViewController». –
Для «в верхней части иерархии представлений» я имею в виду в UIWindow. В любом случае вы можете попытаться добавить UIIndicatorView при создании UIPickerController и управлять им с помощью ivar. – GreyHands
Вы имеете в виду добавить в окно? позвольте мне попробовать, до сих пор не работает. Да, я создал индикатор и спрятал его сначала, но как только я установил скрытый в НЕТ, он не работает. –