これが可能か、または推奨されているかわかりませんが、ユーザーの年齢、身長、体重に基づいて計算を実行するiPhoneアプリケーションがあります。計算ボタンをタップすると、計算結果が即座に出力され、計算が実行され、UILabelに瞬時にデータが入力されます。iOSで計算を遅くします。
これを遅らせて、ビューアラートの「計算」を行い、ラベルに値を設定することは可能ですか?
これが可能か、または推奨されているかわかりませんが、ユーザーの年齢、身長、体重に基づいて計算を実行するiPhoneアプリケーションがあります。計算ボタンをタップすると、計算結果が即座に出力され、計算が実行され、UILabelに瞬時にデータが入力されます。iOSで計算を遅くします。
これを遅らせて、ビューアラートの「計算」を行い、ラベルに値を設定することは可能ですか?
簡単なNSTimerを作成して、起動してUIActivityIndicatorView(たとえば)を使用して、ビュー内で進行状況を表示(またはUIAlertView内に配置)することができます。タイマーが完了し、計算されたラベルが表示されます。
・ホープ、このことができます:)
-
編集を。サンプルコード
spinnerAlertView = [[[UIAlertView alloc] initWithTitle:NSLocalizedString(@"My App Name", @"") message:nil delegate:self cancelButtonTitle:nil otherButtonTitles:nil] autorelease]; // member
spinner = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(125, 50, 30, 30)]; // member
spinner.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;
[spinnerAlertView addSubview: spinner];
[spinner startAnimating];
[spinnerAlertView show];
は計算が完了すると、次に、これを行うことを忘れないでくださいコメントを追加しました:
[spinnerAlertView dismissWithClickedButtonIndex:0 animated:TRUE];
あなたがアニメーションを停止し、メインビューからそれを隠すためにそれを言うことができるが、この方法では、我々は単に削除しますそれはユーザーがそれを却下したかのように...はるかに簡単です。あなたのボタンをクリックすると
ありがとうございます。悪いことにそれを見てください –
あなたと遊ぶためのコードサンプルを追加しました:) – Luke
、あなたのロード警告を表示し、この操作を行います。私は誰かのコードがあまりにもパフォーマンスのことについて文句を聞いたので、
[self performSelector:@selector(calculate) withObject:nil afterDelay:1];
- (void)calculate {
//do your calulation and update the result label
}
それは必要な効果を持っているようです –
それは長い時間がかかりました。 – duffymo
それは苦情ではなく、より多くの想像力を放浪しています。私は個人的に画面上のプロンプトの外観と経験が好きです。可能であればちょっと疑問に思った。 –
5秒間プログレスバーを見るとすぐに答えが出るのはなぜですか? 「Beeのような簡単な計算をすることさえできない!」という人もいるかもしれません。 – duffymo