SwiftUI:如何在这种情况下将 .overlay 与 GeometryReader 一起使用?

Posted

技术标签:

【中文标题】SwiftUI:如何在这种情况下将 .overlay 与 GeometryReader 一起使用?【英文标题】:SwiftUI: how to use .overlay with GeometryReader in this instance? 【发布时间】:2021-06-21 03:07:21 【问题描述】:

我知道使用.background.overlay 包装GeometryReader 是很常见的,这样它就不会修改父视图,但在这种情况下,我在VStack 中没有任何视图将.background.overlay 附加到。我尝试使用EmptyView,然后使用.overlay,但我的视图消失了。

struct TestView: View 
    
    var body: some View 
        VStack 
            GeometryReader  geometry in  //how can I wrap this in a .overlay so it doesn't manipulate parent views?
                SecondView(proxy: geometry)
            
        
    
    

【问题讨论】:

【参考方案1】:

试试Color.clear - 它不会让您的视图消失并保持布局。

struct TestView: View 
    var body: some View 
        VStack 
            
            /// here!
            Color.clear.overlay(
                GeometryReader  geometry in  //how can I wrap this in a .overlay so it doesn't manipulate parent views?
                    SecondView(proxy: geometry)
                
            )
        
    

【讨论】:

以上是关于SwiftUI:如何在这种情况下将 .overlay 与 GeometryReader 一起使用?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不暴露源代码的情况下将 SDK 分发为 AAR 文件?

如何在不创建架构的情况下将 CSV 文件加载到 BigQuery

Postgresql:如何在不使用中间 hstore 的情况下将键值表转换为 json

如何在没有 webview 的情况下将 vimeo 播放器嵌入 react-native?

如何在mongo聚合不起作用的情况下将字符串转换为日期总是返回null?

如何在不使用溢出隐藏的情况下将边框添加到与边框半径完美匹配的表格列