-2

我正在尝试添加与此问题相关的足够代码和信息。

我想使用本机联系人列表来获取电话号码。所以,我更喜欢使用 iOS9 及更高版本支持的“联系人”框架。

当我将这些委托方法添加到我的代码中时。我从 Swift 头文件(ProjectName-Swift.h 文件)中收到错误消息。我在谷歌上搜索,但没有找到任何解决方案。我很确定,“联系人”框架导致了“导入循环”问题。有人有什么建议吗?

// Calling CNContactPickerViewController method

func clickedAdressBook() {
    let contactPicker = CNContactPickerViewController()
    contactPicker.delegate = self
    self.present(contactPicker, animated: true, completion: nil)
}

// to handle ContactsDelegate delegate metods

extension MoneyTransferToGsmVC : ContactsDelegate {
}

为了解决这个问题,我创建了从 CNContactPickerDelegate 扩展的新协议。但它没有工作

    import UIKit
import Foundation
import Contacts
import ContactsUI

protocol ContactsDelegate : CNContactPickerDelegate {

}

当我添加上面的扩展名时,我遇到了错误。

在此处输入图像描述

4

1 回答 1

0

我找到了解决方案。

我知道,这个答案不是一个好的选择。但这对我有用。

首先创建一个新的 .h 文件来复制“Swift Header File”。就我而言,我创建了“ProjectName-SwiftFixed.h”。

然后,我使用#import "ProjectName-SwiftFixed.h"代替我的代码中的#import "ProjectName-SwiftFixed.h"。

于 2018-04-25T20:27:31.543 回答