如何在 SwiftUI 中的 NavigationView 中设置 ScrollView 的背景颜色

2024-03-08

我无法在下面设置背景颜色ScrollView在 SwiftUI 中。当我使用.background(Color.red)背景被切断,因此它不会进入导航栏下方,并且滚动似乎被破坏。 我尝试了几种解决方案,但它们都不起作用。 我有一个简单的视图层次结构

NavigationView {
    ScrollView([.vertical], showsIndicators: true) {
        VStack {
            ForEach(0...50, id: \.self) { _ in
                Text("Text text")
            }
        }
    }
    .navigationBarTitle("Title", displayMode: .large)
}
.navigationViewStyle(StackNavigationViewStyle())

它按预期工作

现在,我想添加背景颜色,我尝试了以下解决方案

1

NavigationView {
    ScrollView([.vertical], showsIndicators: true) {
        VStack {
            ForEach(0...50, id: \.self) { _ in
                Text("Text text")
            }
        }
    }
    .background(Color.red)
    .navigationBarTitle("Title", displayMode: .large)
}
.navigationViewStyle(StackNavigationViewStyle())

result

2

NavigationView {
    ZStack {
        Color.red
        ScrollView([.vertical], showsIndicators: true) {
            VStack {
                ForEach(0...50, id: \.self) { _ in
                    Text("Text text")
                }
            }
        }
        .navigationBarTitle("Title", displayMode: .large)
    }
}
.navigationViewStyle(StackNavigationViewStyle())

result

3

NavigationView {
    ZStack {
        Color.red.edgesIgnoringSafeArea([.all])
        ScrollView([.vertical], showsIndicators: true) {
            VStack {
                ForEach(0...50, id: \.self) { _ in
                    Text("Text text")
                }
            }
        }
        .navigationBarTitle("Title", displayMode: .large)
    }
}
.navigationViewStyle(StackNavigationViewStyle())

result

下如何设置背景颜色ScrollView装进NavigationView?

// edit:

下面的动画呈现了理想的效果(使用UIKit制作)。


在穷尽所有可能性之后,我找到了以下解决方案,该解决方案非常适合您想要实现的目标。

struct DemoView: View {
    
    init(){
        let navigationBarAppearance = UINavigationBarAppearance()
        navigationBarAppearance.backgroundColor = UIColor.red
        UIScrollView.appearance().backgroundColor = UIColor.red
    }
    
    var body: some View {

        NavigationView{
                ScrollView{
                    VStack{   
                        ForEach(0..<30, id: \.self){ _ in
                                Text("Text Text").foregroundColor(Color.black)
                        }
                    }.frame(maxWidth: .infinity)
                     .background(Color(UIColor.red))
            
            }.navigationBarTitle("Title")
        }  
    }
}

希望这可以帮助;)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 SwiftUI 中的 NavigationView 中设置 ScrollView 的背景颜色 的相关文章

  • Python for ios解释器[重复]

    这个问题在这里已经有答案了 可能的重复 iOS 上的 Python 或 Ruby 解释器 https stackoverflow com questions 4772591 python or ruby interpreter on ios
  • 管理一堆具有依赖关系的 NSOperation

    我正在开发一个创建内容并将其发送到现有后端的应用程序 内容是标题 图片和位置 没有什么花哨 后端有点复杂 所以这是我必须做的 让用户拍照 输入标题并授权地图使用其位置 为帖子生成唯一标识符 在后台创建帖子 上传图片 刷新用户界面 我使用了几
  • 如何禁用导航控制器(Swift)内特定视图控制器的自动旋转? [复制]

    这个问题在这里已经有答案了 上面根本没有答案 在导航控制器内的特定 不是全部 视图控制器禁用自动旋转时遇到问题 类似的问题并不涉及禁用特定视图控制器的自动旋转的能力 而是涉及禁用导航控制器内所有视图控制器的自动旋转的能力 我的导航控制器包含
  • Swift 和 inout 参数中闭包的变量捕获

    我注意到 当 Swift 中的闭包捕获变量时 闭包实际上可以修改该值 这对我来说似乎很疯狂 也是一种获得可怕错误的绝佳方法 特别是当同一个 var 被多个闭包捕获时 var capture Hello captured func g thi
  • 如何将 WKUIDelegate 实现到 SwiftUI WKWebView 中?

    我正在 Xcode v11 上创建一个 Web 应用程序 但在实现 WKUIDelegate 来显示 Javascript 警报并在 Web 应用程序上正确确认时遇到问题 我在 ContentView swift 上得到了一个非常简单的 w
  • 这样理解Activity类似于iOS中的ViewController就可以了吗?

    这样理解Activity类似于iOS中的ViewController就可以了吗 我很困惑接受 Android 中的术语概念 如 活动 服务 等 是的 我想说 Activity 和 ViewController 非常相似 只有一个很大的区别
  • 如何改善 ARKit 3.0 中的人物遮挡

    我们正在开发一个使用 ARKit 中的人物遮挡的演示应用程序 因为我们想在最终场景中添加视频 所以我们使用SCNPlanes 使用 a 渲染视频SCNBillboardConstraint以确保他们面向正确的方向 这些视频也是部分透明的 使
  • 如何在谷歌地图中绘制多个点之间的路线?

    我已经在我的应用程序中实现了谷歌地图 并且我需要在地图上标记几个点 我能够用标记标记它们 但我面临的问题是尝试绘制所有这些点之间的路径 我尝试使用折线 但它只是在 A 点和 B 点之间绘制一条直线 我还尝试了谷歌地图 DirectionsA
  • Swift 语言中的抽象函数

    我想用 swift 语言创建一个抽象函数 是否可以 class BaseClass func abstractFunction How do I force this function to be overridden class SubC
  • 在 Swift 中动态设置 Dictionary 的属性

    我正在尝试根据字典中的值在类上设置一些属性 目前我正在这样做 let view UIView UIView if let hidden Bool self props hidden as Bool view hidden hidden if
  • iOS 9 中可滑动的表格视图单元格

    我希望我的表格列表具有像 iOS 8 中那样的可滑动菜单 首次在 iOS 7 中引入 我找到了清晰的 Ray Wenderlich 指南 http www raywenderlich com 62435 make swipeable tab
  • 使用 RestKit 对象映射空响应

    感谢在这里帮忙 https stackoverflow com questions 9743155 restkit mapping with an array of complex objects在 RestKit 邮件列表上 我已经能够解
  • UITableView行高不变

    我创建了一个自定义单元格 我有一系列字典 对于我需要创建的字典值UILables 每个单元可能包含不同数量的UILabels 所以按照我的习惯UITableViewCell类我就是这样做的 void generateCell BOOL is
  • 有没有办法在 iOS 上获取相机流的亮度级别?

    我正在使用 iPhone iPad 摄像头获取视频流并在视频流上进行识别 但随着光照的变化 它会对鲁棒性产生负面影响 我已经在不同的光线下测试了不同的设置 并且可以让它工作 但尝试在运行时调整设置是我所需要的 我可以对每一帧进行简单的亮度检
  • 将 UIPanGestureRecognizer 添加到 UIScrollView 时禁用滚动

    我有一个滚动视图 我想让它在平移完成时消失 它工作正常 平移时滚动视图消失 但问题是现在我无法滚动内容 UIView animateWithDuration 0 2 delay 0 2 options UIViewAnimationCurv
  • 如何跟踪 SwiftUI 应用程序中的所有触摸

    我正在尝试在 SwiftUI 应用程序中实现锁屏 我需要跟踪每个事件才能重新启动锁定计时器 在 UIKit 应用程序中 我使用了这种方法 重写 UIApplication 它允许了解应用程序中的任何事件 override func send
  • Swift :基于 nsdate() 解析、查询日期字段

    我正在尝试检索今天添加的记录进行解析 但查询不返回任何结果 我怎样才能让查询返回基于今天日期的结果 let now NSDate var query PFQuery className userBids query whereKey dat
  • 如何在 SwiftUI 中将变量从一个视图传递到另一个视图

    我正在尝试将一个变量从一个视图传递到 SwiftUI 中的另一个视图 我有一个重置按钮 我想在另一个视图中将变量设置为零 我尝试在视图一中创建一个新结构并在视图2中访问该变量 View 1 State var count MyNumber
  • 将 .p12 证书存储在钥匙串中以供稍后使用

    我正在尝试按照 Apple 文档处理此处的客户端 p12 证书 https developer apple com library ios documentation Security Conceptual CertKeyTrustProg
  • “不能在集合中使用 in/contains 运算符”

    单击搜索栏时出现此错误 由于未捕获的异常 NSInvalidArgumentException 而终止应用程序 原因 无法在集合中使用 in contains 运算符 Assignment 4 SearchResult studentID

随机推荐

  • 为什么我想要 `setRetainInstance(false)`? - 或 - 处理设备旋转的正确方法

    如果我对此有任何错误 请纠正我 这是一种澄清问题 因为我还没有在任何地方看到它明确写过 在Android 4中 您可以调用setRetainInstance true on a Fragment这样在配置更改时 这基本上意味着设备旋转 Fr
  • 在Java中通过对象引用访问静态变量

    为什么我们可以通过Java中的对象引用来访问静态变量 如下面的代码 public class Static private static String x Static variable public String getX return
  • 通过 Cygwin 在 Windows 上出现错误 Hadoop:无法找到 null\bin\winutils.exe

    当我设置HADOOP HOME cygdrive c ecosystem hadoop 2 5 1然后尝试运行bin hadoop 文件系统 or bin hadoop hadoop streaming jar从 Cygwin 我收到以下错
  • exec-maven-plugin 错误,即使在工作示例中也是如此

    EDIT5 更新 我正在使用 Maven 3 3 3 我只是创建新项目并添加编译和执行插件 作为网络上的示例 我尝试执行 但出现错误 ERROR Failed to execute goal org codehaus mojo exec m
  • 在 Visual C++ 中分配对齐数据 (memalign)

    我有一个用 C 编写的小型原型程序 在 Linux 下运行 使用memalign函数分配与边界 如页面 对齐的区域 Visual C 中有等效的函数吗 您正在寻找 aligned malloc http msdn microsoft com
  • 从应用程序内运行仪器测试并等待结果

    我正在开发一个 QA 自动化解决方案 可以在 Android 上记录 回放 QA 测试 一个关键的业务要求是在回放录制的测试时不依赖于连接的 PC 为此 我尝试在没有连接电脑的情况下运行仪器测试 具体来说 Appium UiAutomato
  • AngularJS 中的绑定和消化是如何工作的?

    AngularJS 与其他 JavaScript MVC 框架的区别之一是它能够使用绑定将 JavaScript 中的绑定值回显到 HTML 中 当您为 scope 变量分配任何值时 Angular 会 自动 执行此操作 但这有多自动呢 有
  • CSS - 当链接悬停时更改另一个元素的样式?

    如何在链接悬停时更改另一个元素的样式 无需 jQuery JavaScript ul gt li gt a hover main opacity 0 1 main p font size 200px
  • 还有其他半/便携式方法来动态分配内存吗?

    this char buf NULL scanf ms buf 将获得动态分配的字符缓冲区 我知道这仅限于使用 Gcc 特别是 glibc 2 7 版本 编译的代码 我也知道 正确 和便携的方法是只使用malloc 和朋友 获取记忆 I m
  • 获取 jsoup 中元素的字符偏移量

    我需要将 jsoup 元素映射回源 HTML 中的特定字符偏移量 换句话说 如果我的 HTML 看起来像这样 Hello br World 我需要知道 Hello 从偏移量 0 开始 长度为 6 个字符 br 从偏移量 6 开始 长度为 5
  • Windows Phone 8(WP8) C# 代码不安全?

    编辑 您可以使用不安全的代码 您只需手动编辑 proj 文件 当我可以在手机上使用本机 C 代码时 为什么或为什么 WP8 上的 C 不支持不安全代码 我没想到这一点 我的意思是 拜托 我对 Microsoft 试图强行使用 C 的做法感到
  • id 表达式到底是什么?

    我无法清楚地理解什么是id expression是 我将首先遵循我在 C 标准的最新工作草案中发现的内容 冒险定义一个identifier 标识符是任意长的字母和数字序列 所以看起来任意长的字母和数字序列都可以是id expression
  • React Native 中的热重载和实时重载有什么区别?

    我在这里有点困惑 当我调试 React Native 应用程序时 我通常会启用两者热重载 and 实时重新加载 我想知道它们之间有什么区别 实时重新加载当文件更改时重新加载或刷新整个应用程序 例如 如果您有四个链接深入导航并保存了更改 则实
  • 如何从kinect fracetrack获取网格?

    如何获取 kinect 面部追踪网格 这是网格 https i stack imgur com aPtJt jpg https i stack imgur com aPtJt jpg 我尝试了多种方法 但无法使其发挥作用 e g http
  • 等待集合获取主干中的所有内容

    我有两套收藏 一个用于类别 另一个用于项目 我需要等待类别完成获取所有内容 以便为要获取的项目设置类别 另外 每次单击类别时 我都必须重新获取新的项目集合 因为每次单击类别时都会进行分页 它不会刷新或重新获取集合 因此分页代码会弄乱错误的集
  • 使用 It.IsAny() 的 Moq 单元测试失败

    我正在使用 Moq 为项目编写单元测试 当我尝试验证 DateTime 属性是否已分配值时 其中一个测试失败 这是我的验证 失败 mockTaskContext Verify context gt context TaskQueue Add
  • HDFS 作为 cloudera 快速入门 docker 中的卷

    我对 hadoop 和 docker 都很陌生 我一直致力于扩展 cloudera quickstart docker 镜像 docker 文件 并希望从主机挂载一个目录并将其映射到 hdfs 位置 以便提高性能并将数据保存在本地 当我在任
  • 使用 Logic App 将文件从 SFTP 服务器复制到 Blob 存储

    我想使用逻辑应用将文件从 SFTP 服务器复制到 Blob 存储 逻辑应用每 3 分钟由 重复 块触发一次 并检查服务器上有哪些文件以便复制它们 为了检查服务器上有哪些文件 我使用 列出文件夹中的文件 块 复制本身是通过管道运行执行的 到目
  • 需要在 webview Win 10 UWP 中获取鼠标事件

    我正在创建一个 win 10 UWP 应用程序
  • 如何在 SwiftUI 中的 NavigationView 中设置 ScrollView 的背景颜色

    我无法在下面设置背景颜色ScrollView在 SwiftUI 中 当我使用 background Color red 背景被切断 因此它不会进入导航栏下方 并且滚动似乎被破坏 我尝试了几种解决方案 但它们都不起作用 我有一个简单的视图层次