2

我正在使用 ABPeoplePickerNavigationController 来允许用户从他们的通讯录中选择一个 ABPerson。我从那个联系人那里导入了一些数据。

我想更新该 ABPerson 中的一个字段,以表明我已经从该 ABPerson 导入了数据(我目前将其保存在 Note 字段中 - 有没有更好的方法?)

但是我从 SelectPerson 事件 (ABPeoplePickerSelectPersonEventArgs.Person) 中返回的对象与通讯簿“分离”。

我希望做的是:

        var book = new ABAddressBook();
        var p = book.GetPerson(e.Person.GetProperty(ABPersonProperty.ID));
        p.Note = "foo";
        book.Save();

但我找不到合适的房产。

我在某处读到有一个 kABUIDProperty 并希望这是 GetPerson 想要的 int,但我在 ABPerson 上找不到它。

有没有办法做到这一点?

4

1 回答 1

3

这对我来说很好:

    var book = new ABAddressBook();
    var p = book.GetPerson(e.Person.Id);
    p.Note = "TEST";
    book.Save();
于 2012-05-23T20:03:28.680 回答