Far*_*ruk 5 uiviewcontroller swift cncontactpicker contactsui swiftui
您好,我正在尝试构建一个界面,列出所有联系人,就像Contacts具有Phone相同UI. 到目前为止我所尝试的如下。基本上我尝试CNContactPickerViewController使用ContactsUI. UIViewControllerRepresentable然而我得到的是一张空白的白页。
struct ContactsViewController: UIViewControllerRepresentable {
    func makeUIViewController(context: UIViewControllerRepresentableContext<ContactsViewController>) -> CNContactPickerViewController {
        let controller = CNContactPickerViewController()
        controller.delegate = context.coordinator
        controller.displayedPropertyKeys = [CNContactGivenNameKey]
        return controller
    }
    func updateUIViewController(_ uiViewController: CNContactPickerViewController, context: UIViewControllerRepresentableContext<ContactsViewController>) {
        print("updating")
    }
    func makeCoordinator() -> Coordinator {
        return Coordinator(self)
    }
    class Coordinator: NSObject, CNContactPickerDelegate {
        var parent: ContactsViewController
        init(_ contactsViewController: ContactsViewController) {
            self.parent = contactsViewController
        }
    }
}
以及 SwiftUI 文件;
struct ContactsView: View {
    var body: some View {
        ContactsViewController()
    }
}
提醒一下,我正在其他文件中调用ContactsView内部。所以我想在属于 的一部分中显示联系人。任何帮助将非常感激。TabViewSwiftUISwiftUI ViewTabView
小智 1
这里有两个解决方案:/sf/answers/4033516651/
(1) 有效,但在显示联系人列表之前会闪烁一个视图。对于用户来说不是一个好的体验。
(2)作品类别。在显示联系人列表之前,它还会闪烁一个视图。它沿前缘、后缘和底部边缘显示出意想不到的透明度和意想不到的颜色。这些或许都可以解决。
我刚刚开始尝试解决上面#2 的问题。如果有人能提供一个完全有效的解决方案,那就太好了。
| 归档时间: | 
 | 
| 查看次数: | 3259 次 | 
| 最近记录: |