SwiftUI 选项卡在滑动与下一个按钮导航时查看动画不同?

问题描述 投票:0回答:0

我有一个问题,如果点击 NEXT 按钮,Tab View 将在到达最后一个“Page View”(这是一种很好的 tbh)时动画成为 CONTINUE 按钮......但是如果相反用户滑动选项卡视图而不是点击下一步按钮,该按钮不会在标签更改之间设置动画,而只是在两者之间轻弹。

有没有办法让它在滑动和点击时流畅地动画,或者只是在滑动和点击时轻弹?

此刻,这很奇怪。

struct WhatsNewView: View
{
  @State private var selectedPage : Int    = 0
  private let numberOfPages       : Int    = 2 // Indexed from 0
  private var buttonLabel         : String
  {
    selectedPage < numberOfPages ? "Next" : "Continue"
  }
  

  
  var body: some View
  {
    ZStack
    {
      VStack
      {
        Spacer()
    
        Text("My Application Name 2.0")
          .padding(.top, 20)
    
        Text("What's New?")
          .padding(.top, 5)
    
        TabView(selection: $selectedPage)
        {
          Page1().tag(0)
          Page2().tag(1)
          Page3().tag(2)
        }
        .tabViewStyle(.page)
        .indexViewStyle(.page(backgroundDisplayMode: .always))

        Spacer()
        Spacer()
    
        Button(buttonLabel)
        {
          withAnimation
          {
            if self.selectedPage == numberOfPages
            {
              // Complete the onboarding process - transition view here...

              return
            }
            selectedPage += 1
          }
        }
        .buttonStyle(.borderedProminent)
        .foregroundColor(.white)
    
        Spacer()
        Spacer()
        Spacer()
      }
    }
    .tint(.gray)
  }
}
animation button swiftui label tabview
© www.soinside.com 2019 - 2024. All rights reserved.