私はこの問題をほぼ一日中グーグルで調べていましたが、解決策に近づくことはできませんでした.. :)
WiFi経由でmbedに接続し、接続している場合はユーザーにダイアログを表示し、接続していない場合はユーザーに再試行の可能性を与えるiOSアプリに取り組んでいます。私の問題は、appdelegate.m に接続メソッドを実装したことです。ここからアラートを表示したいと思います。
アラート自体は正常に機能しますが、ボタンが押されたときの検出に問題があり、clickedButtonAtIndex が呼び出されていません。
次のように、appdelegate.h に UIAlertViewDelegate を追加しました。
@interface AppDelegate : NSObject <UIApplicationDelegate, UITabBarControllerDelegate, UIAlertViewDelegate>
次のように、alertview でデリゲートを self に設定しました。
alert_NOT = [[UIAlertView alloc] initWithTitle:@"Not connected!" message:message_to_user delegate:self cancelButtonTitle:@"Try again" otherButtonTitles: nil];
[alert_NOT show];
[alert_NOT release]
clickedButtonAtIndex は次のようになります
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
NSLog(@"test");
}
そのため、アラートビューでボタンが押されたときにログに「テスト」という単語が表示されるのを楽しみにしていますが、何も起こりません。
更新:「FirstViewController.m」に実装しようとしましたが、動作します:Sですが、可能であればappdelegate.mに入れたいと思います..