آموزش Form در سوئیفت یو آی

زمان مطالعه : ۲ دقیقه
آخرین بروزرسانی : ۰۲ اسفند ۱۴۰۰
دریافت اطلاعات کاربر به کمک Form در SwiftUI

در بسیاری از صفحات شما نیاز دارید که تعدادی نوشته یا ورودی از کاربر بگیرید، در واقع Form ای ایجاد کنید که کاربر از طریف آن اطلاعات خود را وارد کند.

تعریف Form در SwiftUi

برای ایجاد یک فرم میتوانید از کلمه کلیدی Form استفاده کنید و درون آن فیلد های مد نظرتون را قرار دهید.

import SwiftUi

struct ContentView: View {

var body: some View {

Form {
Text("Swift Academy")
}
}
}

حالا یک form با سه نوع فیلد میخواهیم درست کنیم.

import SwiftUi

struct ContentView: View {
@State var textFieldValue = ""

var body: some View {

Form {

Text("Swift Academy")

TextField("type your comment", text: $textFieldValue)

Button("send comment") {
// sending comment...
}

}
}
}

تعریف Group در SwiftUi

تعداد فیلد های یک form بیشتر از 10 تا نمیتواند باشد. اگر نیاز دارید که بیشتر از 10 تا فیلد درون form بذارید، باید هر 10 تای آن را درون یک Group قرار دهید.

برای مثال میخواهیم 12 تا Text درون این Form قرار دهیم. 10 تای اول آن را درون یک Group میگذاریم و 2 تای باقی مانده در Group بعدی قرار میگیرد.

import SwiftUi

struct ContentView: View {
var body: some View {

Form {
Group {
Text("Hello")
Text("Hello")
Text("Hello")
Text("Hello")
Text("Hello")
Text("Hello")
Text("Hello")
Text("Hello")
Text("Hello")
Text("Hello")
}
Group {
Text("Hello")
Text("Hello")
}
}

}
}
نکته:
  • Group تغییری در ظاهر Form بوجود نمی آورد و فقط اجازه میدهد که تعداد بیشتری فیلد درون یک فرم قرار دهیم.

تعریف Section در SwiftUi

شما این امکان را دارید که بجای استفاده از Group که تغییری در ظاهر فیلد ها ایجاد نمیکند، از Section ها استفاده کنید، که بین هر بخش فاصله ای را ایجاد میکنند.

import SwiftUi

struct ContentView: View {
var body: some View {

Form {
Section {
Text("Hello")
Text("Hello")
Text("Hello")
}
Section {
Text("Hello")
Text("Hello")
}
}

}
}

تعریف Header برای Section

این امکان را داریم که برای هر Section یک header تعریف کنیم که مشخص کننده موضوع آن بخش است. به مثال زیر دقت کنید.

import SwiftUi

struct ContentView: View {
var body: some View {

Form {
Section(header: Text("Profile")) {
Text("name")
Text("lastname")
Text("age")
}

Section(header: Text("Favorite os")) {
Text("ios")
Text("macos")
}
}

}
}

این مقاله در حال بروز رسانی است و در آینده نزدیک مباحث جدید تری اضافه میشود...
میلاد خط شب
میلاد خط شب
معتقدم هر آدمی میتواند در یک زمینه ای مفید و تاثیر گذار باشد و اصولا آدم "غیر مفید" نداریم. فقط کافی است به موقع و صحیح راهنمایی شود.
پاسخ دهید


به این مقاله علاقه داشتید؟ 🥰

42