0

ユーザーが押すと表示されるボタンがありますABUnknownPersonViewController。問題は、Create New ContactAdd To Existing Contactの 2 つのオプションがあることです。どのオプションが選択されているかを判断するにはどうすればよいですか?

私のアプリでは、連絡先を別の部分に表示しているため、これを知る必要があります。場合によっては、アプリが次のエラーでクラッシュすることがあります。

複数の [既存の連絡先に追加] ユーザー ピッカーを表示しようとしてはいけません

どうすればこの問題を解決できますか?

4

2 に答える 2

0

UIButtonが2つあると思いますか?それぞれにタグを付けて、1つの方法を示します。IBを使用している場合は、Ctrlキーを押しながらコード(.mファイル)にドラッグします。このようなもの:

- (IBAction)buttonPressed:(UIButton *)sender {
  switch (sender.tag) {
    case 0:
      // load create controller
      break;

    case 1:
      // load add controller
      break;

    default:
      break;
  }
}

ボタンのタイトルラベルのテキストを比較することもできますが、ボタンのテキストは開発中に変更される可能性があるため、これは良い習慣ではないと思います。

- (IBAction)buttonPressed:(UIButton *)sender {
  if([sender.titleLabel.text isEqualToString:@"create"]) {
    // load create controller
  } else if ([sender.titleLabel.text isEqualToString:@"add"]) {
    // load add controller
  }
}

ボタンごとに2つの異なるメソッドを作成することもできます:)この方法では、両方のボタンに独自の応答メソッドがあるため、タグの使用を回避できます。

幸運を。

于 2012-12-04T10:26:19.893 に答える
0

ボタンにタグ値を割り当て、クリックしたボタンのタグを確認します。タグに従って条件を付けて、あなたの意見を示してください。

- (IBAction)contactsEdit_New:(id)sender 
{
    if ([addExitingBtn tag]==0)
    {
        // load ur view for exiting

    } 
    else  // here you can add if condition if required
    {
        // load view for creating new
    }


}

このheplsを願っています。

于 2012-09-17T06:28:49.223 に答える