首页 > 解决方案 > 如何在从 SwiftUI 屏幕获取或导航的情节提要中添加右栏按钮项?

问题描述

我在少数地方使用 swiftUI 和故事板,因为这是不可避免的。

我有一个 swiftUI 屏幕,我正在使用以下代码导航到新的故事板屏幕,

struct CertificateController: UIViewControllerRepresentable {
    
    var test: TestData = TestData()
    
    func makeUIViewController(context: Context) -> some UIViewController {
        let storyboard = UIStoryboard(name: "test", bundle: Bundle.main)
        let controller = storyboard.instantiateViewController(identifier: "testView") as TestViewController
        controller.test = test
        return controller
    }
    
    func updateUIViewController(_ uiViewController: UIViewControllerType, context: Context) {}} 

导航工作正常。问题是当我从 swift UI 页面导航到情节提要页面时。我无法在情节提要的导航控制器中添加右栏按钮项目。从 swift UI 屏幕获取导航控制器时,如何访问情节提要中的导航控制器?

通常这是我们向导航控制器添加右栏按钮项的方式,

let logButton : UIBarButtonItem = UIBarButtonItem(title: "Right", style: UIBarButtonItem.Style.plain, target: self, action: "")

self.navigationItem.rightBarButtonItem = logButton
    

但这在这种特定情况下不起作用。

标签: swiftswiftuinavigationuinavigationcontrollerstoryboard

解决方案


推荐阅读