ローカルのコアデータをサーバーと同期する同期機能を作成しています。私は、ユーザーのやり取りを中断することなくバックグラウンドで同期を実行したいと思っています。応答(成功か失敗かに関わらず)を受け取ると、アプリは画面のどこかにメッセージを表示して、結果をユーザーに通知します。iOS - ユーザーインタラクションを中断することなくSVProgressHUDメッセージを画面に表示します。
UIAlertController
は、ユーザーの操作をブロックするので適切ではありません。
現在、私はSVProgressHUD
を使用しています:
__weak StampCollectiblesMainViewController *weakSelf = self;
if ([[AppDelegate sharedAppDelegate] hasInternetConnectionWarnIfNoConnection:YES]) {
[_activityIndicator startAnimating];
[Stamp API_getStampsOnCompletion:^(BOOL success, NSError *error) {
if (error) {
[_activityIndicator stopAnimating];
[SVProgressHUD setDefaultMaskType:SVProgressHUDMaskTypeClear];
[SVProgressHUD setAnimationDuration:0.5];
[SVProgressHUD showErrorWithStatus:@"error syncronize with server"];
}
else {
[_activityIndicator stopAnimating];
[featuredImageView setImageWithURL:[NSURL URLWithString:[Stamp featuredStamp].coverImage] usingActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
[yearDropDownList setValues:[Stamp yearsDropDownValues]];
[yearDropDownList selectRow:0 animated:NO];
[weakSelf yearDropDownListSelected];
[SVProgressHUD dismiss];
}
}];
}
は、私はユーザーがまだアプリと対話することができますすることができます修正はありますか?あまりにも多くのスペースを取らずにメッセージを表示したいだけです。どんな助けも大歓迎です。ありがとう。
良い解決策!今のところ私はSVProgressHUDに固執します。 SVProgressHUDの配置方法を知っていますか? –
http://stackoverflow.com/questions/26728060/position-mbprogresshud-at-the-bottom-top-of-the-screen –