0

基本的に、プロパティであり、合成され、独自のアニメーション開始メソッドにある UIActivityIndi​​catorView を表示します。このインジケーターを初期化し、以下のようなサブビューとして追加します

-(void)startLoader{
//regionChange is the ivar for UIActivitiyIndicatorView
self.regionChange = [[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
self.regionChange.frame = CGRectMake(145.0f, 180.0f, 40.0f, 40.0f);
[self.view addSubview:self.regionChange];
[self.regionChange startAnimating];
 }

マップキットを使用して以下のメソッドを呼び出すと、アニメーションが開始されます。

- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated{

//This calls the activity start method
[self startLoader];

}

インジケータが正しく表示され、アニメーションが開始されます。マップ リージョンが変更されると、サーバーへのポスト リクエストが実行され、NSXMLParser を使用して解析された XML がレスポンスで受信されます。解析が停止すると、マップが更新されます。これは、インジケーターの停止メソッドを呼び出すときですが、停止するために起動することはありません。これは私の停止方法です。

-(void)stopLoader{    

[self.regionChange stopAnimating];
[self.regionChange removeFromSuperView];
 NSlog (@"IS THIS EVER CALLED");

}

hidesWhenStopped も試しましたが、これと上記は呼び出されませんか?

4

0 に答える 0