3个关于SwiftUI中TextField不得不看的知识点

Posted iOS开发栈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3个关于SwiftUI中TextField不得不看的知识点相关的知识,希望对你有一定的参考价值。

几乎每一个ios App都需要处理用户交互,输入框作为获取用户输入内容的最常用控件之一是开发者经常用到的一个控件。这篇文章我们来看一下在iOS14中怎么使用全新的SwiftUI框架来处理TextField。

到公众号【iOS开发栈】学习更多SwiftUI、iOS开发相关内容。

SwiftUI创建一个基础的TextField

struct ContentView: View {
    @State private var aStr = ""
    var body: some View {
        VStack {
            TextField("公众号<iOS开发栈>", text: $aStr)
            
            Text(aStr)
        }
    }
}

创建一个TextField需要两个参数,一个占位符和一个Bind<Binding<String

TextFieldStyle

通过设置textFieldStyle可以修改TextField的展现样式,在SwiftUI中系统自带了UIKit框架中的几个样式:DefaultTextFieldStyle/PlainTextFieldStyle/RoundedBorderTextFieldStyle

设置的方法是:

TextField("公众号<iOS开发栈>", text: $aStr)
    .textFieldStyle(DefaultTextFieldStyle())
如果系统自带的这三种样式都不能满足需求,也可以自定义TextField的样式

TextField文本对齐方式

在SwiftUI中设置TextField的文本对齐方式使用的modifier是multilineTextAlignment,其中包含leading/center/trailing三种对齐方式。

使用这个modifier的方法如下:

TextField("公众号<iOS开发栈>", text: $aStr)
    .multilineTextAlignment(.trailing)
到公众号【iOS开发栈】学习更多SwiftUI、iOS开发相关内容。

总结

这篇文章对SwiftUI框架中的TextFiled控件进行了讲解,主要涉及了创建方法、修改展示样式和设置文本对齐方法三个方面,希望对你有所帮助。

以上是关于3个关于SwiftUI中TextField不得不看的知识点的主要内容,如果未能解决你的问题,请参考以下文章

检测用户何时停止/暂停在 TextField 中写入 - SwiftUI

ForEach 通过多个 TextField 来验证 SwiftUI 中是不是为空

TextField 接受有限的字符 SwiftUi

如何滚动滚动视图以使 TextField 在 SwiftUI 中移动到键盘上方?

在 iOS 14 中编辑 TextField 时 SwiftUI 崩溃

使用 SwiftUI 中活动 TextField 中的值更新非活动 TextField