问题标签 [swiftui-environment]

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 回答
227 浏览

swiftui - 是否可以在 SwiftUI 中更改警报的色调?

嘿,我想在 SwiftUI 中更改警报的色调,我尝试了 .accentColor(.red) 但它不起作用。

0 投票
1 回答
188 浏览

ios - 填充列表以避免键盘重叠

在将其标记为重复之前,请阅读以下内容

我正在尝试制作 iPhone 和 iPad 应用程序,但我遇到了键盘与文本输入重叠的常见问题。我尝试了这个站点上的所有解决方案,但我没有找到一个对我来说是如何工作的,所以我正在使用这个解决方案当键盘出现在 SwiftUI 中时向上移动 TextField

在 iPhone 上效果很好,但问题出现在 iPad 上,我的视图在一张纸上,所以在 iPad 上,这张纸就像一个窗户,所以我试图解决这个问题,如下所示

  • 获取屏幕尺寸
  • 使用我的视图的几何阅读器尺寸
  • 获取键盘尺寸
  • 计算大小的差异以调整填充键盘大小 - ((screensize - viewSize)/2)

这是代码

现在在 iPhone 中运行良好,但我在landScape 中有一个小问题,我认为更多的是列表填充问题,但真正的问题是 iPad 上纵向的工作表由于某种原因当键盘出现时工作表向上推所以它把所有的数学都搞砸了。

即使在 iPad 视图中添加忽略安全区域,我也得到和安全的填充白线

在此处输入图像描述

在此处输入图像描述

  1. 因此,如果您知道我真正想了解的简单或优雅的解决方案,我只是想避免键盘重叠

  2. 知道我是否可以计算工作表的填充或大小以添加正确的填充也很有帮助,无论设备的方向如何

  3. 而且,如果您知道为什么填充在列表的横向视图而不是 iPhone 上不断中断,那将非常有帮助

0 投票
0 回答
523 浏览

swift - 如何在 ObservableObject 中使用 alamofire 调用多个 api:SwiftUI

我正在尝试在我的 SwiftUI 项目中调用 api,为此我想在其中创建 BaseService.swift 文件,我将放置 Alamofire 的常用功能,然后我希望在我想调用的此类中创建 ObservableObject 类多个 api 并访问视图上的数据。也许我做错了,请帮助我。

我的 BaseService.Swift 文件

}

我的 ObservableObject 类是

}

现在我想创建 AuthenticationService 对象并访问 googleAuthentication,refereshToken api。

0 投票
1 回答
259 浏览

swiftui - swiftui中的Safari视图显示空视图

大家好,我正在尝试使用 ZStack 将 Safari 视图显示为全屏模式

但我得到的输出是一个白色的空视图。而且导航栏仍然可见。有人可以帮我解释发生了什么吗? https://i.stack.imgur.com/Qqd64.jpg

0 投票
2 回答
222 浏览

xcode - XCode 中的仅编辑器视图

我正在使用 swiftUI 编写一个新应用程序。每次我打开一个新文件时,画布都会打开。我希望默认视图为“仅编辑器”,并且可以随时手动打开画布。

有没有办法改变默认值?

0 投票
1 回答
396 浏览

swiftui - SwiftUI Timer.publish 导致整个屏幕刷新

全屏刷新的GIF

我目前正在学习组合和 MVVM。我的问题是当我尝试使用 timer.publish 时,最终我要创建一个停止按钮,它会导致整个屏幕刷新而不是我拥有的文本 .onReceive。

我希望有人能给我一些关于我如何错误地使用发布者和观察者的见解。

看法:

查看型号:

0 投票
1 回答
265 浏览

swiftui - 在 SwiftUI 中获取分组列表中的视图大小

我目前正在使用List带有 aGroupedListStyle()和 a 的 a .regular horizontalSizeClass(例如横向模式下的 iPad),这种样式的 List 会自动为每个部分创建一些填充,如下所示:

示例分组列表样式

这个很棒,我想要这个。但是由于我需要在行内以固定宽度显示一些元素,所以我需要知道 List 内行的实际宽度。

我尝试用 GeometryReader 包装列表,但宽度与行的宽度不匹配,因为整个Section.

因此,我尝试使用此处解释的 PreferenceKey 方法,将 aGeometryReader放在listRowBackground行的修饰符中,但该值永远不会更新

有没有一种工作方式来获取父级的大小,而不是 GeometryReader在父级周围使用 a (因为它在列表上很复杂,需要指定高度和宽度才能正常工作)?

0 投票
1 回答
226 浏览

swift - 使用过滤器使用 MVVM 在 SwiftUI 中重新加载数据

MVVM在 SwiftUI 的代码中有这段代码。我的目标是当应用程序第一次加载时返回没有过滤器的结果。当我按下视图上的按钮以触发CatLotViewModel重新加载过滤后的数据但似乎无法确定我可以触发它时。

0 投票
2 回答
97 浏览

swift - @Published 对于环境对象和嵌套的 ObservableObejct 不能按预期工作

假设我有UserSettings EnviornmentObject并且它的一个属性是一个类,问题是当我更改该类的值时,EnviornmentObject不会发布这些更改。我明白为什么,但我似乎找不到解决方法。

这是显示问题的简化代码:

0 投票
2 回答
5858 浏览

firebase - 在没有 AppDelegate 和 SceneDelegate 的新 SwiftUI 应用程序生命周期中,我的 iOS 应用程序在哪里配置 Firebase?

我已经有一个可以使用 SwiftUI 完全构建的应用程序。我使用 Firebase 使用 Cloud Functions 进行身份验证和通知。

现在使用新的 SwiftUI App->Scene->View 构造,我无法将设置添加到我的应用程序中。

例如 -> 最初FirebaseApp.configure()会进入 in didFinishLaunchingWithOptionsAppDelegate现在我不知道在哪里添加这个配置。

设置远程通知也是如此。

PS:如果需要更多以前应用程序的详细信息/代码,请评论。我没有添加任何代码,因为我觉得这是不必要的。