我设置了一个计时器来显示两个警报。第一个警报显示给用户一个警告:“嘿,您已经不活动了一段时间了,您还在这里吗?”如果他们点击“是”,它就会重置计时器。如果他们不点击警报按钮,在x时间之后,它会显示第二个警报通知他们的会话已经过期。他们点击OK,然后将它们从导航视图中移出并返回到主页。
这一切都工作得很好,但是XCode抛出的错误是:
[Presentation] Attempt to present <SwiftUI.PlatformAlertController: 0x7fc2fa031800> on <_TtGC7SwiftUI19UIHostingControllerG
我有一个EnvironmentObject“用户”,负责登录和获取用户数据。它在我的应用程序中的所有视图之间共享。一旦加载了用户数据,应用程序将视图从"LoginView“更改为”HomeView“。这个用户对象包含数据“userId”。
我有另一个名为“警报”的模型,应该在HomeView中初始化。警报将从服务器获取警报,但它需要用户的userId才能实际获取。如何从用户到警报共享这些数据?
struct HomeView: View {
@EnvironmentObject var user: User
@ObservedObject var alerts: Ale
我想修改字体大小和颜色的文本在一个警报在SwiftUI。添加修饰符似乎不起作用。我一定是错过了一些简单的东西。我创建了最基本的警报屏幕,添加了文本修饰符,它们被忽略了。我创建了自己的视图来展示我想要的结果。显然,由于我可以做我想要的,我可以走这条路,虽然这是很多工作,这似乎只是内置警报应该能够做到这一点。
struct ContentView: View {
@State private var showAlert = false
@State private var showMyAlert = false
var body: some View {
G
我正在创建一个使用MVVM架构的用户登录页面,我想要显示一个警告页面,如果文本字段为空或如果用户名/密码错误。因此,在单击登录并调用API之后,如果登录失败,我希望显示一个警报,但是我尝试更改状态,但仍然不显示警报。 LoginView struct LoginView: View {
@ObservedObject var user: User
@ObservedObject var viewModel = LoginViewModel()
@State var inputUser: String = ""
@State var inputP
我正在尝试使用SwiftUI和MVVM架构构建一个应用程序。我想让我的视图在它的ViewModel认为必要的时候给出一个警告--比如说,当它有了来自模型的某种新的结果时。因此,假设每当VM检测到一个新结果时,它就相应地设置它的status:
The ViewModel:
enum Status {
case idle
case computing
case newResultAvailable
}
class MyViewModel: ObservableObject {
@Published var status = Status.idle
..
我有一个警报,如果位置服务关闭或拒绝弹出,将引导用户到设置,以便位置服务可以打开。它是通过将状态变量showAlert设置为true来显示的。我的代码是: Alert(title: Text("Location Services"),
message: Text("Location Services is off or denied. The app must have your location to function. Please enable Location Services for the app in Setti
我用SwiftUI创建了一个应用程序。
视图是结构体,但我需要知道视图控制器,因为需要它来呈现一些特殊的警报。
我看到在我的项目中有AppDelegate和SceneDelegate。
我发现了这个
let contentView = ContentView()
// Use a UIHostingController as window root view controller.
if let windowScene = scene as? UIWindowScene {
let window = UIWindow(windowScene: windowSc