带列表的 SwiftUI 自定义导航栏

2024-04-05

我制作了一个类似于下面看到的苹果列表的列表,但我真的不喜欢 UInavigation 栏的样子。理想情况下,我希望它更小或将其隐藏,以便我可以将自己的视图放在那里。

我尝试使用苹果外观 api 中的以下内容来隐藏它

init() { 
    UINavigationBar.appearance().backgroundColor = .green
    UINavigationBar.appearance().isHidden = true
   }

与巨大的标题相比,即使有这样的导航栏也会更理想

但这没有影响,有没有人有任何建议或想法,我如何可以将其定制为更像我想要的那样?


这是我使用 swiftUI 和一些 UINavigationView 所实现的,我相信这些修饰符将在 beta 后实现到 swiftUI 中。

我通过调整 max 关于 UINavigationBar 外观的想法来实现这一点。如何更改导航栏中的背景或颜色? https://stackoverflow.com/questions/56773511/how-can-be-changed-the-background-or-the-color-in-the-navigation-bar

除此之外,我只是将切换开关切换到导航栏标题视图

var body: some View {
    VStack {
        if displayImg {
            Image("dontstarve")
                .resizable()
                .aspectRatio(contentMode: .fill)
                .edgesIgnoringSafeArea(.all)
        } else {
            Image(systemName: "play")
        }
    }
        .navigationBarTitle(Text("Adjustment"), displayMode: .inline)
        .navigationBarItems(trailing:
            HStack {
                Toggle(isOn: $displayImg) {
                    Text("\(self.displayImg ? "on" : "off")")
                        .foregroundColor(Color.white)
                }
    })
}

以下是唯一不是 SwiftUI 的代码。我只是将它们全部扔进 init() 中:

init() {
    UINavigationBar.appearance().tintColor = .systemGray6
    UINavigationBar.appearance().barTintColor = .systemTeal
    UINavigationBar.appearance().titleTextAttributes = [NSAttributedString.Key.foregroundColor:UIColor.white, NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 25)]
}

是的,记得将导航栏标题模式设置为内联:

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

带列表的 SwiftUI 自定义导航栏 的相关文章

随机推荐

  • pytesseract 错误 Windows 错误 [错误 2]

    您好 我正在尝试使用 python 库 pytesseract 从图像中提取文本 请查找代码 from PIL import Image from pytesseract import image to string print image
  • C++ 中的列表析构函数

    我刚刚实现了链接列表 它工作得很好 但甚至很难 我已经看到我无法在 Node 上创建工作析构函数的符号 这就是为什么它在代码中未实现 我需要在节点上实现工作析构函数 List 的析构函数 但这一个很简单 我将只使用 Node 类的析构函数
  • MySql 数据在第 1 行的“提前”列被截断

    在我的项目中 我使用了 txtAdvance 的关键事件 double gtotal Double parseDouble txtGtotal getText double ad Double parseDouble txtAdvance
  • Rails:如何查询 activerecord 中模型的时间范围(而不是日期)值

    我有一个模型time属性 这是用户想要接收电子邮件的时间 即美国东部时间下午 5 点 的配置 它在数据库中存储为21 00 00 我想按范围查询 例如 我希望每个用户都有一个提醒时间20 55 00 and 21 05 05 Rails 似
  • 如果定义了 item,则 Ansible with_items

    安塞布尔 1 9 4 该脚本应该仅在定义了某些变量的主机上执行某些任务 正常情况下可以正常工作 但与with items陈述 debug var symlinks when symlinks is defined name Create o
  • 如何从 React JS 中的另一个组件获取引用

    主App组件中的代码如下 class App extends Component componentDidMount console log this ref debugger render return div div
  • 更改 Twitter 引导模式中的背景颜色?

    在twitter bootstrap中创建模态时 有什么方法可以更改背景颜色吗 完全删除阴影吗 注意 为了消除阴影 这doesn t有效 因为它也会改变点击行为 我仍然希望能够在模式外部单击以将其关闭 myModal modal backd
  • 如何外部化错误消息

    这是一个外部化错误消息的最佳实践问题 我正在开发一个项目 其中存在代码 简短描述和严重性错误 我想知道外部化此类描述的最佳方式是什么 我想到的是将它们放在代码中是不好的 将它们存储在数据库中 将它们放在属性文件中 或者可能有一个加载了描述的
  • Pandas 查找,将数据框中的一列映射到不同数据框中的另一列

    我有两个 pandas 数据框 df1 和 df2 df1 具有 X 列 Y 列以及 weeknum df2 具有 Z weeknum 和 datetime 列 我基本上想保留 df1 并在其中添加一个额外的列 该列对应 weeknum 的
  • 在 Oracle SQL 中根据时间对重复的分组项运行总计

    我的第一篇文章 所以请耐心等待 我想根据按日期划分的值进行求和 但只需要日期的总和 而不是按项目分组的总和 已经为此工作好几天了 试图避免使用光标 但可能不得不这样做 这是我正在查看的数据的示例 顺便说一句 这是在 Oracle 11g 中
  • 如何将对象传输到 Azure Blob 存储而不将文件保存在本地存储上?

    我一直在关注这个来自 GitHub 的示例 https github com Azure Samples storage blobs dotnet quickstart将文件传输到 Azure Blob 存储 程序在本地创建一个文件MyDo
  • UIPageViewController所有页面上的UIButton

    我正在开发一个 iPhone 应用程序 并创建了一个UIPageViewController 我们称其为容器 其中包含多个UIViewController页面 我们称它们为subpages The subpages过渡样式是滚动 现在 我喜
  • 如何让 Selenium WebDriver 等待一段时间?

    我可以编写以下代码让WebDriver等待一段时间 new WebDriverWait driver 20 until ExpectedConditions presenceOfElementLocated By id loginBox B
  • 如何让 PowerShell 4 cmdlet(例如 Test-NetConnection)在 Windows 7 上运行?

    情况 在 Windows 7 SP1 计算机上 我已更新为 Windows6 1 KB2819745 x64 MultiPkg msu 此外 在 PowerShell 中 PSVersionTable 现在报告 PSVersion 4 0
  • Python 进程在 Numpy 数组中仅使用 1.6 GB RAM Ubuntu 32 位

    我有一个学习人工神经网络的程序 它需要一个二维 numpy 数组作为训练数据 我想要使 用的数据数组的大小约为 300 000 x 400 个浮点数 我不能在这里使用分块 因为我正在使用的库 DeepLearningTutorials 采用
  • Azure Pipelines - 使用 azcopy 下载文件

    我可以看到有一个任务将本地文件上传到Azure存储或VM 但是我们如何从 blob 或文件共享下载到管道代理中呢 目前我正在使用 azcopy 和 SAS URI Pipelines 中是否有一个任务可以使用服务连接来执行此操作 因此 由于
  • 在存储位置找不到存档:Google 功能

    我有一个正在运行的 Google 函数 我在代码中使用它并且工作正常 但是当我去 Google 函数查看源代码时 它显示 在存储位置找不到存档 https i stack imgur com NoOOI png为什么我看不到我的源代码 我应
  • swing 中的框架、窗格或面板有什么用?

    我读到 JFrame 由多个窗格组成 什么是窗格以及为什么 Jframe 由窗格组成 为什么会有 JPanel 而 JFrame 看起来与 JPanel 完全一样 但有一个菜单栏和一个关闭按钮 那么 JPanel 需要什么 谁能清楚地向我解
  • Sidekiq 作业中的重试次数

    有没有办法获取当前作业的重试次数 我希望作业在 x 次重试后停止 而不是崩溃 我想询问执行方法中的重试计数 这样如果重试计数等于 x 我可以简单地返回 def perform args return if retry count gt 5
  • 带列表的 SwiftUI 自定义导航栏

    我制作了一个类似于下面看到的苹果列表的列表 但我真的不喜欢 UInavigation 栏的样子 理想情况下 我希望它更小或将其隐藏 以便我可以将自己的视图放在那里 我尝试使用苹果外观 api 中的以下内容来隐藏它 init UINaviga