首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用自定义标签获取日期值的最快方法?

使用自定义标签获取日期值的最快方法?
EN

Stack Overflow用户
提问于 2009-11-09 23:19:07
回答 1查看 223关注 0票数 0

在联系人中,我设置了一个带有自定义标签的日期字段(编辑联系人时,请选择添加字段->日期->周年纪念->添加自定义标签)。

它存储在ID为'kABPersonDateProperty‘的ABMultiValue属性中,标签为(例如) 'Next Appointment’。

index的功能包括告诉我索引处的标签名、读取索引处的值以及在ID/ ABMultiValue之间进行转换。

请原谅我在这里太粗了,但是最快的方法是获得‘下一个约会’的日期,以迭代多值字段,查找匹配标签的索引,然后复制该索引处的属性的值?据我所知,记录之间的索引会有所不同。

我意识到有一个从属性ID获取索引的函数,但这意味着在早些时候,我将不得不通过查看所有记录来发现propertyid,试图找到其中包含“下一个约会”字段的记录,以获取其属性ID。

我希望在表视图中查看日期并对其进行排序,因此我需要尽可能高效地获取值。有没有人有快速完成此操作的方法,最好是使用示例代码或进一步信息的链接?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-11-10 15:04:36

你描述的方法是正确的。您可能想要执行类似于iPhone OS的地址簿编程指南中的multivalue properties示例代码的操作:

代码语言:javascript
复制
CFStringRef phoneNumber, phoneNumberLabel;
multi = ABRecordCopyValue(aRecord, kABPersonPhoneProperty);

for (CFIndex i = 0; i < ABMultiValueGetCount(multi); i++) {
    phoneNumberLabel = ABMultiValueCopyLabelAtIndex(multi, i);
    phoneNumber      = ABMultiValueCopyValueAtIndex(multi, i);

    /* ... do something with phoneNumberLabel and phoneNumber ... */

    CFRelease(phoneNumberLabel);
    CFRelease(phoneNumber);
}

CFRelease(aRecord);
CFRelease(multi);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1701682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档