I currently have a UIActivityIndicator
appearing on screen for a second or two. I would like to set grey out the background as this appears on screen but I am not sure how to do this...
Here's how I have initialized the indicator so far.
- (void)viewDidLoad
{
//...
activity = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 32.0f, 32.0f)];
[activity setCenter:CGPointMake(160.0f, 208.0f)];
[activity setActivityIndicatorViewStyle:UIActivityIndicatorViewStyleGray];
[self.tableView addSubview:activity];
[activity startAnimating];
[activity performSelector:@selector(stopAnimating) withObject:nil afterDelay:1.0];
}
Any help would be greatly appreciated.
You should check out the SVProgressHUD
It has options for masking the background and is dead simple to work with.
The SVProgressHUDMaskType has options to
enum {
SVProgressHUDMaskTypeNone = 1, // allow user interactions, don't dim background UI (default)
SVProgressHUDMaskTypeClear, // disable user interactions, don't dim background UI
SVProgressHUDMaskTypeBlack, // disable user interactions, dim background UI with 50% translucent black
SVProgressHUDMaskTypeGradient // disable user interactions, dim background UI with translucent radial gradient (a-la-alertView)
};`