0

ビューをポップするとき、確認を求めて、いくつかのデータを保存したいと思います。UIActionSheetを使用して確認を求めています。しかし、アクションシートでの応答に関係なく、ビューがバックグラウンドで変化しているため、応答を使用する際に問題が発生します。ナビゲーションコントローラーを使用してビューを切り替えています。どうすればこれを解決できますか

TIA

4

2 に答える 2

0

より良いオプションは、確認を求めるためにuialertviewを使用することです。これを行うには、次の手順に従います。

ヘッダーファイルに次のものが含まれていることを確認してください。

@interface YourViewController : UIViewController <UIAlertViewDelegate>

確認を求められたら、次のコードを追加します。

 UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Message" message:@"Are You Sure" delegate:self cancelButtonTitle:@"YES" otherButtonTitles:@"NO", nil];
[alert show];
[alert release];

下のボタンを1つ押すと、デリゲートが呼び出されるので、アプリの.mファイルを追加します

 - (void)alertView:(UIAlertView *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
 // the user clicked one of the YES/NO buttons
  if (buttonIndex == 0)
  {
    NSLog(@"NO button pressed");
  }                
  else
  {
    //Save data here                                          
    NSLog(@"YES button pressed");
  }
 }
于 2012-08-07T10:42:02.427 に答える
0

@PooLas私があなたを正しく理解していれば、ユーザーの確認にuiactionsheetを使用し、バックグラウンド(実際にはアクションシートの下)でビューコントローラーを変更します。まあ、それを行うことはできません。デリゲートは、それを表示するコントローラーに接続する必要があるためです(私が間違っている場合は、私を修正してください)。したがって、ボタンをクリックすると、最初にアクションシートを閉じてからビューコントローラを変更することしかできませんが、反対にすることはできません– PooLaS

于 2012-08-14T04:20:31.833 に答える