小编Hub*_*ski的帖子

无法解析的标识符NavigationButton错误

我是swiftUI的新手,只是想弄清楚基础知识。我只是试图创建一个新视图和一个将移至该视图的按钮。

当我使用下面的代码时,出现错误:尽管使用了未解析的标识符'NavigationButton',但该错误是由Xcode生成的。

import SwiftUI

struct HomeView: View {

    var body: some View{
        NavigationView {
            NavigationButton(destination: NextView()) {
                Text("Navigate 1")}
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

xcode ios swift swiftui xcode11

5
推荐指数
1
解决办法
828
查看次数

如何在 SwiftUI 中为按下时的导航链接设置动画?

我试图通过在按下 NavigationLink() 时提供一些反馈来改进用户体验。我的意思是一个简单的动画,它会增长然后缩小链接以显示它被按下或以任何其他方式提供反馈。

这是我正在尝试改进的代码:

NavigationLink(
    destination: TrickView(trickId: begginerTricks[index]["trickId"] as! String),
    label: {
        TrickRowView(name: begginerTricks[index]["trickName"] as! String,
        trickType: begginerTricks[index]["trickType"] as! String,
        trickComplete: [false,false,false,false],
        width: width * 0.73, height: height * 0.13)
})
.padding(.bottom, 15)
                                                
Run Code Online (Sandbox Code Playgroud)

这是导航链接列表中的一个 NavigationLink。

任何有关如何执行此操作的帮助将不胜感激。

animation user-experience ios swiftui swiftui-navigationlink

5
推荐指数
1
解决办法
5486
查看次数

如何使用 swiftUI 创建平滑的颜色变化动画?(有问题的例子)

我有一个播放/暂停按钮,按下时会发生变化。目前它只是淡入淡出,但我希望它执行一个动画,看起来新颜色流过旧颜色。 在此输入图像描述

在此输入图像描述

在此输入图像描述

在此输入图像描述

这是我到目前为止所拥有的:

if(meditationViewModel.timerIsRunning){
    HStack{
        Image(systemName: "pause")
        Text("STOP")
            .bold()
     }
      .padding()
      .foregroundColor(.white)
      .background(Color.red)
      .cornerRadius(25)
      .shadow(radius: 20)
}else{
    HStack{
        Image(systemName: "play")
        Text("PLAY")
            .bold()
    }
     .padding()
     .foregroundColor(.white)
     .background(Color.green)
     .cornerRadius(25)
}
Run Code Online (Sandbox Code Playgroud)

变化meditationViewModel.timerIsRunning发生在其他地方。

animation button swift swiftui

3
推荐指数
1
解决办法
884
查看次数

SwiftUI 导航链接后退按钮在预览中工作,但在模拟器或设备中不起作用

我尝试使用一个简单的导航视图,并带有指向不同视图的导航链接。运行应用程序并按下导航链接时,它会将我带到新视图。

然而,当我在模拟器或设备上时,后退按钮不起作用,而在预览中它工作正常。

有什么想法可能是什么问题吗?


import SwiftUI

struct HomeView: View {
    
    var body: some View {
        NavigationView {
            VStack {
                NavigationLink(destination: Text("Detail View")) {
                    Text("Hello World")
                }
            }
            .navigationBarTitle("SwiftUI")
        }
    }
}

struct HomeView_Previews: PreviewProvider {
    static var previews: some View {
        HomeView()
    }
}
Run Code Online (Sandbox Code Playgroud)

我认为问题可能是由于 HomeView 是 tabView 的一部分引起的。以下代码来自 AppView.swift,它是应用程序运行时运行的代码(您可以在最底部看到该代码)。

我认为这就是问题所在,因为当注释掉下面的代码时,应用程序可以正常工作。


HomeView()
.tabItem {
Image(systemName: "house.fill")
Text("Home")
}
.onTapGesture {
self.selectedTab = 2
}
.tag(2)
                    
Run Code Online (Sandbox Code Playgroud)
@main
struct Skate_AppApp: App {
    var body: some Scene {
        WindowGroup {
            HomeView()
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

xcode ios swift navigationview swiftui

2
推荐指数
1
解决办法
1984
查看次数