【问题标题】:Titanium - how to edit contacts? [closed]Titanium - 如何编辑联系人? [关闭]
【发布时间】:2013-07-25 02:19:02
【问题描述】:

如何编辑通讯录上的所有用户?

我知道使用 Objective C 可以通过库地址来完成...

谁能告诉我如何编辑联系人列表中的所有用户?

谢谢

【问题讨论】:

  • 你研究了什么?
  • 我在 Ti.Contacts 部分查看了 Titanium 的文档,但没有找到任何说明如何编辑用户的信息……只创建一个新人
  • 检查答案,你会看到如何。另外,如果对您有帮助,请将答案标记为正确,以便其他人在寻找答案时提供帮助。

标签: iphone ios titanium contacts


【解决方案1】:

我在 Titanium 的文档中看不到任何直接通过定义的方法修改人的方法,您对此是正确的。但是,如果您查看文档,它会提供更新联系人所需的一切。首先,您需要从following methods 之一获取person 对象:

getPeopleWithName( String name ) : Titanium.Contacts.Person[]
getPersonByID( Number id ) : Titanium.Contacts.Person

拥有person 对象后,您需要使用within the object 列出的方法

person 对象进行更改后,您必须使用保存方法located here。函数长什么样子:

save( Titanium.Contacts.Person[] contacts )

另外,请确保您仔细阅读文档,因为它在顶部有一条专门针对 ios 的注释:

iOS 平台说明:
在 iOS 上,联系人数据库可能会被 外部应用程序,导致您拥有的任何 Person 或 Group 对象 检索到与数据库不同步。这些人的身份证 不能保证对象保持不变,因此更新对象 当它不同步时可能会产生不可预知的结果。

为避免这种情况,请监听 reload 事件。当您收到重新加载时 事件,您应该假设任何现有的 Person 或 Group 对象是 无效并在修改之前从联系人模块重新加载它们 他们。

请参阅重新加载事件的示例使用示例。

【讨论】:

  • 如何使用reload 事件从我的联系人中获取所有 ID?例如,我的列表中有 87 个联系人,但是当我尝试通过 ID 获取他们时,使用 reload 事件仅显示 3-60 之间的联系人将避免这种情况,因为我能够获取我的所有联系人 1-87?你能帮助我吗?感谢您的回复@ObieMD5
  • 知道了!我使用 contact.recordId 存储唯一 ID -- iOS 仅适用于 Android 它可以由 contact.id 完成 感谢您的帮助 @ObieMD5
猜你喜欢
  • 1970-01-01
  • 2017-03-18
  • 2020-09-04
  • 1970-01-01
  • 2011-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-03
相关资源
最近更新 更多