我有一個UIActivityIndicator
,開始在我所有的視圖的頂部動畫。在他開始動畫之後,彈出當前視圖的父視圖。現在,在他製作動畫之後,我用一個塊調用另一個類並運行一些服務器命令。使用一個ActivityIndicator和兩個類
我的問題是,在其他類即時通訊服務器獲得響應,但我不能告訴 UIActivityIndicator
停止,因爲他在其他類。 (我不得不說,我不想在應用程序委託上實現任何內容)。
在服務器類上,獲得響應後,出現UIAlertView
,但UIAlertView
在服務器類中實現。這就是我想要UIActivityIndicator
停止的地方。
我希望我明白,如果沒有,請告訴我。
謝謝。
- (void)buttonPressed:(id)sender
{
UIView * darkView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 480)];
darkView.backgroundColor = [UIColor blackColor];
darkView.alpha = 0.5f;
UIActivityIndicatorView * activityIndicator = [[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
[darkView addSubview:activityIndicator];
activityIndicator.center = darkView.center;
[activityIndicator startAnimating];
[[UIApplication sharedApplication].keyWindow addSubview:darkView];
// Inside this class (ShareByEmail) there is a UIAlertView that should stop the
// animation that already running right now.
ShareByEmail *sbe = [[ShareByEmail alloc]init];
[sbe share];
[self.navigationController popViewControllerAnimated:YES];
}
因此,在activiyIndicator視圖中,我已經添加了這一行:'[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(stopAnimating :) name:@「messageActivityIndicator」 object:activityIndicator]',並在服務器類中添加了[[[NSNotificationCenter defaultCenter] postNotificationName:@「messageActivityIndicator」object:nil''。是對的嗎?什麼是正確的做法呢?我從來沒有這樣做過。 –
查看這些通知示例的鏈接,http://mobile.tutsplus.com/tutorials/iphone/ios-sdk_nsnotificationcenter/ .. http://iphonebyradix.blogspot.com/2011/07/nsnotificationcenter-tutorial.html .. http://www.theappcodeblog.com/2011/05/16/nsnotificationcenter-tutorial-using-the-notification-center-in-your-iphone-app/ – iDev
也更新了我的答案。有很多方法可以實現這一點。提到了這樣一種方式。 – iDev