【问题标题】:CNContactViewController - Edit button not showing upCNContactViewController - 编辑按钮未显示
【发布时间】:2016-05-06 11:59:44
【问题描述】:

我目前正在开发一个 Swift 应用程序,我希望用户能够编辑他们之前在应用程序中创建的联系人。话虽如此,我正在使用CNContactViewController(forContact: CNContact) init 函数来创建视图控制器。

我在 TableViewController 的子类中有以下代码,它嵌入在导航控制器中

let contactViewController = CNContactViewController(forNewContact: contact)
contactViewController.delegate = self
self.navigationController?.pushViewController(contactViewController, animated: true)

当contactViewController 出现时,联系人加载正常,但顶部导航栏中缺少编辑按钮。如果我在将 print(contactViewController.allowsEdits) 推送到导航控制器之前立即对其进行硬编码,它会显示为 true,这很奇怪。

感谢您的帮助。

(注意,我传入构造函数的联系人是CNMutableContact,所以应该是可编辑的)

【问题讨论】:

  • 不要推送它,而是尝试在它自己的导航控制器中呈现它。

标签: ios swift uinavigationcontroller contacts viewcontroller


【解决方案1】:

在按下你的contactViewController之前,你应该只添加这个以显示“编辑”按钮:

let contactViewController = CNContactViewController(forNewContact: contact)
contactViewController.delegate = self

//Here you make Edit button to appear and do things that it is supposed to do
contactViewController.navigationItem.rightBarButtonItem? = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Edit,target: self, action: nil)

self.navigationController?.pushViewController(contactViewController, animated: true)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多