SwiftUI LazyVGrid - 顶部对齐

2023-12-28

我有很多卡片需要在 vGrid 中显示。但是,卡片具有动态高度,我想要做的是将列中的卡片与顶部对齐。

这是当前的设置:

let resultGridLayout = [GridItem(.adaptive(minimum: 160), spacing: 10)]

func itemsView() -> some View {
        VStack {
            filterButton()
                .padding(.bottom)
            LazyVGrid(columns: resultGridLayout, spacing: Constants.ItemsGrid.spacing) {
                ForEach(MockData.resultsData, id: \.id) { result in
                    ProductCardView(viewModel: .init(container: viewModel.container, menuItem: result))
                }
            }
            .padding(.horizontal, Constants.ItemsGrid.padding)
        }
    }

目前的布局如下:

因此,每个项目都位于其列空间的中心,而我想要发生的是让它们在每行的顶部对齐。

显然alignmentvGrid 的修饰符允许我们水平对齐(.center、.leading、.trailing 等),但是如何阻止它们在中心垂直对齐?


我假设您想对齐网格项本身,例如

let resultGridLayout = [GridItem(.adaptive(minimum: 160), spacing: 10, 
                          alignment: .top)]    // << here !!

使用 Xcode 13.3 / iOS 15.4 进行测试(在某些复制中)

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

SwiftUI LazyVGrid - 顶部对齐 的相关文章

  • SwiftUI 按钮在出现时更改文本大小

    从 GIF 中可以看出 一旦工作表完全打开 完成 按钮文本就会变大 这不仅发生在这个视图中 而且也发生在使用系统图像而不是文本的其他视图中 有谁知道问题的解决方案还是我做错了什么 我仍然对 Swift 记忆犹新 NavigationView
  • 在视图之间传递变量 SwiftUI

    再次基本问题 我想让变量 anytext 对于我要添加的所有未来视图都可见且可访问 在我的例子中 变量将是String 如果是的话 程序会改变吗 Float 我怎样才能将其另存为全局变量 如果我重新启动应用程序 变量会自行删除吗 如何保存即
  • SwiftUI如何用TabView隐藏导航栏

    我正在使用 SwiftUITabView inside NavigationView 但我就是无法在iOS 13 0模拟器中隐藏导航栏 这是代码 import SwiftUI struct TestView View var body so
  • 不符合 BindableObject 协议 - Xcode 11 Beta 4

    尝试一下那里的例子 找到一个项目 其中有一个类bindableobject并且它没有给出任何错误 现在 Xcode 11 beta 4 已经发布 我收到错误 类型 UserSettings 不符合协议 BindableObject 它有一个
  • 选择部分文本右对齐[重复]

    这个问题在这里已经有答案了 我想知道是否有任何方法可以将选项文本的一部分向右对齐 在下面 您可以看到我有一个选择 左侧有一些名称 右侧有 垂直 我需要将 垂直 向右拉 有什么办法可以做到这一点吗
  • SwiftUI 无法使用 navigationLink 来回导航

    请注意 在 gif 中 一旦我导航并关闭新视图 我就无法返回 这是 SwiftUI 错误还是导航链接的误用 struct ContentView View var body some View return NavigationView N
  • 如何避免在 Excel 中垂直合并单元格?

    我厌倦了合并单元格 它们就是行不通 因此 当我只需要文本在多列中居中时 我找到了一种避免水平合并单元格的方法 那是 Range A1 C1 HorizontalAlignment xlCenterAcrossSelection 它就像一个魅
  • SwiftUI - 正确使用 @available() 和 #available

    我在下面的代码中遗漏了什么吗 此应用程序在 iOS 15 设备上构建 macOS Monterey b5 Xcode 13 b5 并完美执行 但在 iOS 14 7 设备上导致 SIGABRT import SwiftUI struct C
  • SwiftUI withAnimation 完成回调

    我有一个基于某种状态的 swiftUI 动画 withAnimation linear duration 0 1 self someState newState 上述动画完成时是否会触发任何回调 如果有关于如何在 SwiftUI 中使用完成
  • SwiftUI:如何删除两个部分之间的间距? (iOS16)

    如何消除两个部分之间的间距 这是我的代码 NavigationStack List Section NavigationLink value Color mint HStack Image systemName person font sy
  • 返回列表 (SwiftUI) 后,选定的列表行背景保持灰色(选定)。 iOS 14 + Xcode 12

    从详细信息视图返回后 所选行保持灰色 在模拟器和真实设备上都会发生 仅在 iOS 14 上 有谁知道如何删除它 使其行为与 iOS 13 上相同 不保持选中状态 这是项目中唯一的代码 没有其他导航或任何东西 let items item1
  • 如何在 TextField (SwiftUI) 上添加底线

    I use Rectangle 在 TextField SwiftUI 上添加底部边框 但我想用protocol TextFieldStyle对于 TextField 样式的底线 如 RoundedBorderTextFieldStyle
  • 理解 UIViewRepresentable

    斯威夫特 5 0 iOS 13 尝试了解 UIViewRepresentable 的工作原理 并将这个简单的示例放在一起 几乎就这样了 但也许完全是无稽之谈 是的 我知道 SwiftUI 中已经有一个 tapGesture 这只是一个测试
  • SwiftUI ScrollView 只向一个方向滚动

    尝试使用视图作为列表行样式来创建自定义列表 以摆脱默认情况下列表中难看的分隔线 但是 一旦我将 ZStack 行放入滚动视图中 滚动视图就会在两个方向上滚动 而不仅仅是垂直滚动 这是内容视图 NavigationView ScrollVie
  • 在 SwiftUI 中,如何执行手势但将手势转发到其后面的视图?

    我正在创建一个工具提示系统 如果用户触摸工具提示之外的任何地方 我想关闭工具提示 我希望这样在工具提示之外的触摸既可以消除工具提示 又可以激活用户点击的任何控件 因此 您可以打开一个工具提示 然后仍然单击工具提示外部的按钮 并在第一次点击时
  • 如何使用 SwiftUI 获取多个屏幕上的键盘高度并移动按钮

    以下代码获取键盘显示时的键盘高度 并将按钮移动键盘高度 在转换源 ContentView 和转换目标 SecibdContentView 处以相同的方式执行此移动 但按钮在转换目标处不移动 如何使按钮在多个屏幕上移动相同 import Sw
  • 如何在 swiftUI (macOS) 中检测按键按下和释放

    除了标题之外没什么可说的 我希望能够在按下按键和释放按键时 在 macOS 上 在 swiftUI 视图中执行操作 在 swiftUI 中是否有任何好的方法可以做到这一点 如果没有 有什么解决方法吗 不幸的是 键盘事件处理是其中一个令人痛苦
  • 如何右对齐 UILabel?

    Remark 实施 myLabel textAlignment right does not解决了我的问题 这不是我所要求的 我想要实现的是让标签对齐右对齐 为了更清楚地说明 这就是如何left对齐外观 就是这样justify对齐外观 if
  • MIPS 获取地址未在字边界上对齐,使用了 .align 4,仍然无法执行

    有任何想法吗 为什么我得到 0x00400020 处的运行时异常 获取地址未在字边界 0x00000007 上对齐 问题行是 lw s1 0 a1 copy arg2 数组大小 data align 4 added this didnt w
  • CSS - div 与父 div 底部对齐(内联块)

    我知道这个 html 很草率 有一些不必要的额外 div 但无论如何 我无法理解为什么 ID 为 info box right 的 div 与父 div 的底部对齐 您可以看到 文本 与下面的 jsfiddle 示例的底部 有什么想法可以让

随机推荐

  • 将 bcrypt 添加到 package.json 时,如何解决使用 docker node alpine Image 时“找不到任何可使用的 Python 安装”的问题?

    在我将 bcrypt 添加到 package json 之前 一切正常 现在 我收到以下错误消息 这是我的 package json 的摘录 dependencies bcrypt 3 0 6 express 4 17 1 mongodb
  • 自定义属性:必须是明显我做错的事情

    我一直在添加不同实体的部分类 以毫无问题地添加各种有用的方法 根据我见过的示例 尝试添加属性似乎很简单 但我的失败得很惨 Updated例子 public List
  • 在javascript中识别firefox浏览器的选定选项卡URL

    我正在开发一个网络应用程序 我有兴趣获取选定的选项卡 URL 我正在使用火狐浏览器 我通过执行以下 javascript 语句实现了这一点 Get the URL of page which is currently loaded in a
  • 带 CASE 条件和 SUM() 的 SELECT 查询

    我目前正在使用这些sql语句 我的表有 CPaymentType 字段 其中包含 现金 或 支票 我可以通过执行 2 个 SQL 语句来汇总付款金额 如下所示 在这种情况下 用户甚至不会注意到执行2条sql语句或仅执行1条sql语句时的速度
  • JS原型与继承

    在业余时间我尝试学习一点 JS 但我还是坚持主题中的主题 var person new Person Bob Smith 52 var teacher new Teacher Adam Greff 209 function Humans f
  • 在 Unity C# WWW 中显示进度条

    我有这段代码可以从服务器下载视频 但我需要显示进度条 这可能吗 我知道我不能有 WriteAllBytes 的进度条 private IEnumerator DownloadStreamingVideoAndLoad string strU
  • App.config:用户与应用程序范围

    我已经在我的项目中添加了 App config 文件 我从 项目 gt 属性 gt 设置 面板创建了两个设置 我注意到 当我添加设置时 我可以将范围定义为User or Application User 应用 如果我将设置定义为User它去
  • 在派生类中扩展枚举[重复]

    这个问题在这里已经有答案了 我有一个类层次结构 其中的每个类都有一个异常类 在并行层次结构中派生 因此 class Base class Derived public Base class BaseException public std
  • C# 用韩文编码保存文件

    具有以下代码块 用于使用所选编码保存文件 当文件在文本编辑器中打开时 它显示编码为 ASCII StringBuilder sb new StringBuilder sb Append Lots of korean text here En
  • 在接收器发生故障后,如何强制 Flume-NG 处理积压的事件?

    我正在尝试设置 Flume NG 从一组服务器 主要运行 Tomcat 实例和 Apache Httpd 收集各种日志 并将它们转储到 5 节点 Hadoop 集群上的 HDFS 中 设置如下所示 每个应用程序服务器将相关日志跟踪到一个执行
  • 以zend形式添加img标签

    我正在构建一个带有扩展 Zend Form 的类的表单 如何在表单中添加 img 标签 我还需要向其添加一个类并对齐属性 这是我想要达到的最终结果 span class myElement img src myPath align left
  • jQuery $('html, body').not()

    here http jsfiddle net m2eqS 1 我希望当您单击任意位置但不在 div 上时发出警报 当我单击 div 时 也会显示警报 JS 您可以使用事件参数来查看单击了哪个目标并返回 false html body cli
  • ksoap2 铸造 getResponse()

    使用 ksoap2 lib 从 android 调用 net SOAP1 1 Web 服务时 我遇到了将响应转换为自定义对象的问题 例如 下面的代码在 httpTransport call soapAction soapEnvelope 之
  • 复制依赖项,排除某些配置

    假设项目布局如下 allprojects apply plugin java configurations provided compile extendsFrom provided project a dependencies compi
  • C# PropertyGrid 拖放

    我正在尝试使用 VS2005 NET 2 0 在 C 中实现对 propertygrid 的拖 放支持 propertygrid 可以处理 Dragenter 等事件 但似乎没有办法在拖动事件期间获取指针下的 griditem 到目前为止
  • Style.Triggers 与 ControlTemplate.Triggers

    我应该什么时候选择Style Triggers我应该什么时候选择ControlTemplate Triggers 使用其中一种比另一种有什么好处吗 假设我有这些样式可以达到相同的结果
  • 读取 pandas 中除最后一行之外的所有 CSV 文件

    我有 CSV 文件 我在 pandas 中读取这些文件 usr bin env python import pandas as pd import sys filename sys argv 1 df pd read csv filenam
  • Django Formset 中的自定义标签

    如何将自定义标签添加到我的表单集中
  • google-services.json - 更改了 package_name - 我需要创建一个新的配置文件

    我当前的环境已经有一个 google services json 文件并且一切正常 但现在由于不可预见的情况 我必须重命名我的项目的包 我现在已经成功地重命名了包 我还进入了 google services json 文件并重命名了那里的包
  • SwiftUI LazyVGrid - 顶部对齐

    我有很多卡片需要在 vGrid 中显示 但是 卡片具有动态高度 我想要做的是将列中的卡片与顶部对齐 这是当前的设置 let resultGridLayout GridItem adaptive minimum 160 spacing 10