1

ユーザーがボタンをクリックすると、Web サービスが呼び出され、別のクラスから解析が行われます。その間、データを取得している間、ユーザーに待機するように通知するアクティビティ インジケーターを含むアラートビューを表示しています。アラートビューは、応答を受け取った後にのみ閉じます。何らかのエラー/失敗がある場合は、「失敗」というアラートと「OK」のキャンセル ボタンが表示されます。ただし、アクティビティ インジケーター付きのアラートビューは引き続き表示されるため、アプリがフリーズします。Webサービスを呼び出して解析しているクラスからこれを却下するにはどうすればよいですか?

4

1 に答える 1

0

次の場所で共有されているコードを使用して、アプリに既に表示されているすべての既存のアラート ビューを閉じることができます。

iOSは別のものを表示する前にUIAlertViewを閉じます

for (UIWindow* w in [UIApplication sharedApplication].windows)
    for (NSObject* o in w.subviews)
        if ([o isKindOfClass:[UIAlertView class]])
            [(UIAlertView*)o dismissWithClickedButtonIndex:[(UIAlertView*)o cancelButtonIndex] animated:YES];
于 2013-03-05T17:32:46.280 に答える