我还是iOS新手,Swift和SwiftUI…
我使用SwiftUI创建了一个内容视图,然后我在Swift中将视图添加到我的视图控制器
let childView = UIHostingController(rootView: ChildUIView())
addChild(childView)
childView.view.frame = viewController.bounds
viewController.addSubview(childView.view)
上面的代码工作得很好,但是我怎么能瞄准我的rootView SwiftUI
中的视图在Android Java中,我可以这样做
ScrollView scrollView = childView.findViewById(R.id.scrollview);
在我的Swift文件中,我尝试这样做
let scrollView = childView.rootView.id(scrollView)
但是我不知道使用
的语法是否正确然后我试图传递数据类型为ScrollView
let scrollView: ScrollView = childView.rootView.id(scrollView) as! ScrollView
但是我得到一个错误说,Generic parameter Content could not be inferred in cast to ScrollView
.
可能,我得到这个错误是因为我不知道它是如何完成的。
有谁能帮我吗?好的…我终于找到了解决办法。使用viewWithTag
法
首先,我必须给我的ScrollView
一个int
类型的标签,也许是100
,然后像这样引用它
childView.view.viewWithTag(100)