问题标签 [geometryreader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1771 浏览

swift - GeometryReader 在 SwiftUI 中折叠我的列表

我想使用 GeometryReader 来进行一些计算。没有我的设计看起来应该:

在此处输入图像描述

添加后,每条线的高度都相互重叠,我做错了吗:

在此处输入图像描述

0 投票
1 回答
403 浏览

swift - 如果超过视图高度,SwiftUI + ScrollView 无法添加视图

我试图Text在一个视图中显示组件的所有属性。Text以不同的样式和字体显示。为此,我Text在一个视图中添加了多个组件。

为了使它成为可能,我正在使用该ScrollView组件并在其中添加所有Text组件。在某些时候,它不允许我在 scrollView 中再添加一个组件,并且每次都显示不同的错误。

代码:

它显示如下错误:

在此处输入图像描述

如果我评论行

错误消失了。

在这种情况下,它似乎只允许我添加 10 个Text组件如果我添加的组件超过了它会给我一个错误。

它是一个错误吗?这是 SwiftUI 中的常见行为吗?如果 scrollView 不允许添加更多组件,它有什么好处?

0 投票
1 回答
3526 浏览

layout - 在 ScrollView 中使用 GeometryReader 的 SwiftUI 布局

我正在尝试创建一个可滚动的项目网格。我创建了一个名为的自定义视图GridView,用于GeometryReader将空间划分为 和 中的列和HStacksVStacks。但由于某种原因,它的大小在ScrollView. 在屏幕截图中,您看到GridView(红色)和它的父VStack级(绿色)缩小了。网格内的项目仍然可见,呈现在其区域之外,但无法正确滚动。

为什么GridView不是包含其项目所需的大小?如果是这样,我认为这个 UI 会正确滚动。

在此处输入图像描述

0 投票
1 回答
192 浏览

layout - 如何在不填充视图的情况下使用 GeometryReader

这是我的目标布局。

在此处输入图像描述

但我也想使用GeometryReaderand 当我把它放在Text里面时GeometryReader它会占据整个高度。

在此处输入图像描述

我怎样才能解决这个问题?

0 投票
2 回答
1245 浏览

swiftui - SwiftUI:在 Firebase ML Kit 识别的元素周围绘制矩形

我目前正在尝试在图像顶部绘制用 Firebase ML Kit 识别的文本框。目前,我还没有成功,我根本看不到任何框,因为它们都显示在屏幕外。我正在查看这篇文章以供参考:https ://medium.com/swlh/how-to-draw-bounding-boxes-with-swiftui-d93d1414eb00以及该项目:https ://github.com/firebase /quickstart-ios/blob/master/mlvision/MLVisionExample/ViewController.swift

这是应该显示框的视图:

}


这是该视图嵌套的视图:

}

本教程的计算导致矩形太大而示例项目之一太小。(与高度类似)不幸的是,我找不到 Firebase 决定元素大小的大小。这就是它的样子:根本 在此处输入图像描述 不计算宽度和高度,矩形似乎具有它们应该具有的大小(不完全),所以这给了我一个假设,即 ML Kit 的大小计算没有完成与 image.size.height/width 成比例。

0 投票
4 回答
6531 浏览

swiftui - SwiftUI GeometryReader 不会在中心布局自定义子视图

我有一个自定义视图:

哪个被放置到另一个视图中GeometryReader

问题是,ImageContent视图不在屏幕中心,它被放置在顶部,但是,通过删除ImageContent子视图并将视图的内容直接添加到几何阅读器中将解决问题(见图)。

此外,删除GeometryReader也可以解决问题。

我需要子视图,因为我将实现一些额外的逻辑,并且还需要子视图,因为GeometryReader添加了一个手势来Image使用它。

任何想法?

截屏

0 投票
1 回答
1735 浏览

ios - GeometryReader 在 SwiftUI 中占用额外空间

下面的代码是创建一个自定义按钮

但是,整个按钮视图包含了 GeometryReader 引入的额外空间,因此当我将此视图放到根视图时,无法消除空间。

预览图像

0 投票
1 回答
3429 浏览

scrollview - SwiftUI - ScrollView 没有一直滚动到底部

我无法让我的滚动视图一直滚动到底部。奇怪的是,当它填充一组数据时,它没有这个问题,但是,在另一个数据集中它到达最后一项,我无法滚动到 HStack 的下半部分。

在此处输入图像描述

这是视图的代码

0 投票
2 回答
413 浏览

ios - 设置 Text().frame(maxWidth: .infinity) 后如何保持文本作为前导对齐

这可能是一个简单的案例,但我找不到解决方案。

这是我的代码,使用 GeometryReader 设置 SwiftUI 视图大小的相对布局,如 Image。在最后一个 VStack 上的问题,我想将 Text 的背景转到 VStack 的右端。因此,我将其设置为Text("Haibo: asdasd").frame(maxWidth: .infinity)但之后我发现文本变为水平居中并且不遵循 VStack 对齐:.leading。

好吧,请看截图以便更好地理解,Text("Haibo: asdasd")黄色区域居中。怎么可能让它一直领先对齐?

在此处输入图像描述

0 投票
1 回答
717 浏览

animation - SwiftUI - 视图左上角的按钮不起作用

我是 SwiftUI 的新手,我的“汉堡包”菜单有问题。

基本上我为主页创建了 2 个视图:主页视图和主侧菜单视图。

我的主要目标是将“汉堡包”按钮放在视图的左上角,并在单击时打开侧面菜单。但是,当我使用 .edgesIgnoringSafeArea(.top) 并将“汉堡包”按钮放在视图的左上角时,该按钮不会打开菜单。相反,如果我不添加 .edgesIgnoringSafeArea(.top),则该按钮将显示在视图中间,并且在单击它时可以正常打开菜单。

你能帮我看看我做错了什么吗?

提前致谢。

主页视图

主侧菜单视图