私はiOSアプリケーションを作成しています。スピナーを使用してUIAlertViewを表示する必要があります。 時々、私はアラートの中心にスピナーを追加しようとすると何かがうまくいかず、通常この前に別のアラートがあったとき(まさしくルールではありませんが、UIActivityIndicatorViewがUIAlertViewで正しく表示されない
私はスピナーの作成を遅らせてこのバグを部分的に解決しました。ここで(警告がメンバーUIAlertViewである)私はそれを行う方法です。
このコードは、のviewDidLoadである:
alert = [[[UIAlertView alloc] initWithTitle:@"Loading..." message:nil delegate:nil cancelButtonTitle:nil otherButtonTitles: nil] autorelease];
[alert show];
[self performSelector:@selector(addSpinner) withObject:nil afterDelay:0.5f];
そして、この1つは私のaddSpinner機能である:
- (void) addSpinner{
UIActivityIndicatorView *indicator2 = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
indicator2.center = CGPointMake(alert.bounds.size.width/2, alert.bounds.size.height - 50);
[indicator2 startAnimating];
[alert addSubview:indicator2];
[indicator2 release];
}
このソリューションは毎回動作していますが、どうしたのか本当に気に入らないのです。警報がポップアップしてからスピンナーを1秒半表示することはそれほど邪魔ではありませんが、これを処理するにはより良い方法が必要です。私はiOSの専門家でもありませんし、シニアプログラマでもありませんが、イベントを使用することはできませんか? 「実際にアラートが表示されたら、addSpinner関数に移動する」のような何か?私はこれをどうやって行うのか分かりませんし、Web上で多くの助けを見つけることができませんでした...
誰かが私を助けることを願っています!ありがとう。
ありがとうございます。使用していただきありがとうございます。私はあなたの答えを私の "受け入れられた答え"としてマークすることはできません。それは実際に問題を解決するものではありません。 – rdurand
問題はありません:) ..もし役に立ちましたら、ただ投票することができます:) – waheeda
私はあなたの問題を解決するコード、それが助けてくれることを願っています。 – waheeda