空文本字段时,SwiftUI文本字段的字体大小会缩小

问题描述

我有两个仅接受数字的文本字段。每当文本在一个字段中更改时,也会同时更新另一个字段。如果清除编辑文本字段,占位符的字体大小将缩小。使用observedObject来跟踪文本的更改和在另一个文本字段中的更新。

enter image description here

VStack{
                HStack{
                    VStack{
                        Text("FROM")
                            .kerning(5.0)
                            .foregroundColor(Color.white.opacity(0.6))
                            .font(Font.system(size: self.hSize == .compact ? 24 : 48))
                            .bold()
                        TextField("amount",text: self.$textBindingManagerFROM.text,onEditingChanged: {(val) in
                                self.textBindingManagerFROM.editing = true
                                self.textBindingManagerTO.editing = false
                        })
                            .keyboardType(.decimalPad)
                            .multilineTextAlignment(.center)
                            .allowsTightening(true)
                            .lineLimit(1)
                            .minimumScaleFactor(0.3)
                            .font(Font.system(size: self.hSize == .compact ? 24 : 48))
                            .frame(minHeight: self.hSize == .compact ? 50 : 100,alignment: .leading)
                    }
                    VStack{
                        Text("TO")
                            .foregroundColor(Color.white.opacity(0.5))
                            .font(Font.system(size: self.hSize == .compact ? 24 : 48))
                            .bold()
                            .kerning(5.0)
                        TextField("amount",text: self.$textBindingManagerTO.text,onEditingChanged: {(val) in
                                self.textBindingManagerFROM.editing = false
                                self.textBindingManagerTO.editing = true
                            })
                            .keyboardType(.numberPad)
                            .multilineTextAlignment(.center)
                            .allowsTightening(true)
                            .lineLimit(1)
                            .minimumScaleFactor(0.3)
                            .font(Font.system(size: self.hSize == .compact ? 24 : 48))
                    }
                    
                }
                .padding(.horizontal,16)
            }

@ObservedObject var textBindingManagerFROM = TextBindingManager(limit: 12,_editing: false)
    @ObservedObject var textBindingManagerTO = TextBindingManager(limit: 16,_editing: false)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...