0

私のiPhoneアプリはロケーションベースのアプリです。現在の場所を見つけ、NSURLConnectionメソッドを介して独自の詳細を表示します。アプリがバックグラウンドからアクティブになったときに、この詳細を更新したいと思います。うまく機能する更新ボタンを使用しました。そのため、 からリフレッシュ関数を呼び出します-applicationDidBecomeActive:method。現在の場所の詳細が正常に更新されます。しかし、それは他の場所の詳細を更新していません。現在の場所を他の場所に変更した場合、-applicationDidBecomeActive:呼び出しは現在の場所に対してのみ更新され、ビュー画面に変更はありません。どうすればこれを解決でき、すべての場所を更新したいですか?

委任方法:

-(void)applicationDidBecomeActive:(UIApplication *)application
{
    [self.viewController refresh];//calls refresh method 
}

viewController メソッド:

-(void)refresh
{
    NSLog(@"%@",self.placedetail.name);
    [self displays:self.placedetail];
}

Placedetails インスタンスには、場所の緯度と経度があり、これを使用して特定の場所の詳細を取得できます。1回目は現在地です。

-(void)displays:(model *)place
{
    self.placedetail=place;
    NSString *strs=[@"http requst"];
    NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:[NSURL URLWithString:strs]];
    NSLog(@"%@",request);
    self.reqTimeZone=[NSURLConnection connectionWithRequest:request delegate:self];
    [self.reqTimeZone start]; 
}

どうすればこの問題を解決できますか?

4

1 に答える 1

0

このデリゲートにコードを書く必要があります..

- (void)applicationWillEnterForeground:(UIApplication *)application{

[self.viewController の更新];

}

于 2012-05-15T12:17:41.240 に答える