私はMBProgressHUDで遊んでいます。 ViewController(テーブルビュー)でworflowは、そのような移行:IBActionは、2つの異なるテーブル 2.1切り替えることが呼び出される)MBProgressHUD表示されません
1)機能reloadAllMonth
2.2)新しいテーブルのデータの配列を初期化する(呼び出される)MBProgressHUD * HUDはHUDが消えるはずです)reloadAllMonthは 4を終了する) 3を表示する必要がある
私の現在のコード:何が起こるか
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
//sparing you the code that determins where the tap occured
HUD = [[MBProgressHUD alloc]initWithFrame:self.view.frame];
[MBProgressHUD showHUDAddedTo:self.view animated:YES];
[self reloadAllMonth];
allMonthIsActive = YES;
[MBProgressHUD hideHUDForView:self.view animated:YES];
// some other code table reload etc.
}
:
- >関数touchesbeganが呼び出される は - >何も3~4秒(ローディング時間) ために起こりません - >新しいテーブル
質問ポップアップ表示:なぜHUDが表示されませんの?どこで私は間違えましたか ?
私のコードをあなたの提案に変更しましたが、何も変更しません。 HUDはまだ表示されません。質問コードを新しいコードに更新しました。 –
Answer – Zalykr
これは私の絶対的な最初のアイデアとコードでした。問題は、バックグラウンドスレッドでreloadAllMonthメソッドが実行されることです。したがって、メインスレッドが実行され、テーブルビューの描画が開始されます。テーブルビューには、reloadAllMonthにロードするデータが必要です。データが利用可能になる前にテーブルが描画されるので、アプリがクラッシュする=) –