サーバーからデータをロード中に UIProgressview を更新しようとしています。サーバー通信を処理するための sharedInstance を持つクラスがあり、(while ループで) サーバーからデータを取得するメソッドがあります。server-communication-Class (sharedInstance) から通知を送信して UIProgressView を更新したいのですが、うまくいきません。
UIProgressView は InterfaceBuilder で正しく設定されており、show/hide/setProgress は正常に機能しますが、setProgress は通知によって機能しません。
私のサーバー通信クラスのテストループは次のとおりです。
- (void)completeServerQueue {
NSNumber *progress = [[NSNumber alloc] init];
for (int i=0; i<15; i++) {
progress = [[NSNumber alloc] initWithFloat:(100/15*i) ];
float test = [progress floatValue];
[[NSNotificationCenter defaultCenter]
postNotificationName:@"ServerQueueProgress"
object:progress];
sleep(1);
}
}
そして、これは通知が検出されたときに呼び出されるメソッドです(ブレークポイントでチェックしたところ、実行されました...):
- (void)serverQueueProgress:(NSNotification *)notification {
[serverQueueProgressView setProgress:[[notification object] floatValue]];
}
何か案は?