PHPickerViewController 隐藏搜索栏和导航栏

问题描述

我一直在尝试在新应用中实现照片选择功能。我目前的方法是使用嵌入在 UIViewControllerRepresentable 中的 PHPickerViewController 在 swiftUI 视图中显示

这是我的 makeUIViewController 函数

func makeUIViewController(context: Context) -> PHPickerViewController {
    var configuration = PHPickerConfiguration()
    configuration.filter = filter
    configuration.selectionLimit = limit
    let controller = PHPickerViewController(configuration: configuration)
    controller.delegate = context.coordinator

    return controller
}

它在一个名为 PhotoPicker 的结构体中:

struct PhotoPicker: UIViewControllerRepresentable {

我想隐藏的是这部分:

enter image description here

是的,所有这些。 让我解释一下,PickerView 总是呈现出来的,它不是弹出窗口,因此不需要取消按钮。如您所见,也没有完成按钮。那是因为只需要选择一张图像,所以当用户点击图像时,会立即调用选择新图像的事件。无需用户确认。然后关于搜索栏,我真的不想要它,我只是想让用户选择一张照片,最后在我的情况下也不需要在照片和相册之间进行小切换。

我尝试了很多不同的方法包括尝试为在 makeUIViewController 中创建的控制器设置选项。这些选项例如:

controller.navigationController?.setToolbarHidden(true,animated: false)
controller.navigationController?.setNavigationBarHidden(true,animated: false)

而且我还尝试在我的 SwiftUI 主体中调用视图修饰符:

PhotoPicker(filter: .images,limit: 1) { (results) in
    
}
.navigationBarTitle("")
.navigationBarHidden(true)
.statusBar(hidden: true)
.navigationBarBackButtonHidden(true)

但同样,它们似乎都不起作用。所以这就是我在这里问的原因,因为我似乎尝试了一切,但没有任何效果......

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...