如何确定用户在ABUnknownPersonViewController中按下了哪两个按钮?

时间:2012-09-17 05:16:40

标签: iphone objective-c xcode uibutton

我有一个按钮,如果用户按下我显示ABUnknownPersonViewController。现在问题是有两个选项创建新联系人& 添加到现有联系人。如何确定选择了哪个选项?

我需要知道这一点,因为在我的应用中,我在另一部分显示我的联系人。有时它会导致我的应用程序因错误而崩溃:

  

不应该尝试显示多个添加到现有联系人选择器

我该如何解决这个问题?

2 个答案:

答案 0 :(得分: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
    }


}

希望这一点。

答案 1 :(得分:0)

我猜你有2个UIButtons? 给每个标签并将它们指向一个方法。如果你正在使用IB,只需按CTRL拖动到你的代码(.m文件)。 像这样:

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

    case 1:
      // load add controller
      break;

    default:
      break;
  }
}

你也可以尝试比较按钮titlelabel上的文字,虽然我不认为这是好习惯,因为按钮上的文字可以在开发过程中改变。

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

您还可以为每个按钮创建2种不同的方法:) 这样您就可以避免使用标签,因为两个按钮都有自己的方法来回答。

祝你好运。