小编Cra*_*ine的帖子

SwiftUI问题将变量传递给另一个视图

我想将Float变量从一个视图传递到另一个新视图。

在下面的代码中,有一个称为mhzValue的Float值,该值是通过Slider设置的,滑块会更改该值,然后Text将显示在视图中。当用户点击Navigation Button来显示新视图时,我希望能够使用mhzValue并将其显示在文本框中的新视图中,并将其设置为另一个变量。

希望有道理。

请在下面查看一些示例代码。

谢谢。

克雷格

import SwiftUI
struct ContentView : View {
    @State private var mhzValue : Float = 0
    var body: some View {
        // Navigation View
        NavigationView {

            VStack{
                Text("Test Value:")
                    .font(.headline)
                    .color(.blue)
                    .padding(.leading, -180.0)

                //Get Slider Value
                Slider(value: $mhzValue, from: 1, through: 55, by: 1)
                    .padding(.horizontal)
                //Display Slider Value
                Text("\(Int(mhzValue)) Value")
                    .font(.title)
                    .fontWeight(.semibold)
                    .color(.blue)
                // Naviagtion Button and send value of mhzValue to new View
                NavigationButton(destination: NextView()){
                    Image(systemName: "plus.square.fill")
                        .foregroundColor(.white)
                        .font(/*@START_MENU_TOKEN@*/.title/*@END_MENU_TOKEN@*/)
                        .frame(width: 150.0, height: 16.0) …
Run Code Online (Sandbox Code Playgroud)

view swiftui

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

我试图显示 Double 中的单个值

我正在尝试显示来自步进器的单个值。

显示步进器在文本解释中显示双精度值。

例如,我将值 litreValue 设置为 Double,然后使用步进器可以选择一个值,例如 8,但我希望它在文本字段中仅显示为 8,而不是 8.000000。

我尝试过 Text("(NSString(format: "%.2f", litreValue))") 但出现错误。

有什么建议请。

import SwiftUI

struct ContentView: View {
  @State private var litreValue : Double = 0.00
  @State private var selection = 0
  let mixRatio = ["10:1","15:1","20:1","25:1","30:1","35:1","40:1","45:1","50:1","55:1","60:1","65:1","70:1"]
  var body: some View {

    VStack{

      ZStack{
        RoundedRectangle(cornerRadius: /*@START_MENU_TOKEN@*/20/*@END_MENU_TOKEN@*/)
          .foregroundColor(/*@START_MENU_TOKEN@*/.blue/*@END_MENU_TOKEN@*/)
          .frame(width: 300.0, height: 200.0)
          .shadow(radius: /*@START_MENU_TOKEN@*/10/*@END_MENU_TOKEN@*/)
        VStack {
          Image("Fuel-Icon2")
            .resizable()
            .frame(width: /*@START_MENU_TOKEN@*/100.0/*@END_MENU_TOKEN@*/, height: /*@START_MENU_TOKEN@*/100.0/*@END_MENU_TOKEN@*/)
          Text("Fuel Mix")
            .font(.largeTitle)
        }
      }

      VStack {
        Stepper(value: $litreValue, in: 1...200) {
          Text("Litres")
            .font(.title)
        }.padding(.top, -30)
        ZStack{ …
Run Code Online (Sandbox Code Playgroud)

text stepper swiftui

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

标签 统计

swiftui ×2

stepper ×1

text ×1

view ×1