- Published on
SwiftUI-da shakllar yaratish
- Authors
- Name
- ShoxruxC
- @iOSdasturchi
Hammaga salom!
Hammaga salom va yana xush kelibsiz! Men Nikman. Bu videoda shakllar haqida gaplashamiz. SwiftUI’da framework bilan birga keladigan bir nechta tayyor shakllar bor – biz ularni ekranga qanday qo‘shishni va chiroyli qilishni ko‘rib chiqamiz.
Shakllar oddiy tuyulishi mumkin, lekin SwiftUI’da juda muhim – nafaqat oddiy doira qo‘shish uchun, balki boshqa ko‘rinishlarni shakllantirish uchun ham ishlatiladi. Masalan, dumaloq tugma yoki dumaloq rasm kerak bo‘lsa, shakllardan foydalanib, kerakli ko‘rinishni yaratish mumkin.
Yangi fayl yaratish
Xcode loyihamizga qaytdim va bu videodagi kod uchun yangi fayl yaratyapman:
- Project Navigator’da (chapda) o‘ng tugmani bosing.
- “New File” > “SwiftUI View”ni tanlang.
- Fayl nomini “ShapesBootcamp” deb qo‘ying.
Fayl ochilgach, o‘ngdagi preview’da “Resume” tugmasini bosing – standart Text("Hello, World!") ko‘rinadi. Bu video shakllar haqida, shuning uchun matnni o‘chirib, shakl qo‘shamiz.
Shakllarni qo‘shish
SwiftUI’da bir nechta tayyor shakllar bor, masalan, Circle:
Circle()
- Yuqori o‘ngdagi “+” (Library) orqali “Circle”ni qo‘shsak yoki
Circle()deb yozsak, ekranda mukammal doira paydo bo‘ladi.
Rang o‘zgartirish
Circle()
.fill(Color.blue)
.fill– shaklni rang bilan to‘ldiradi (standart qora)..fill(Color.red)yoki.fill(Color.green)qilish mumkin.Yoki:
Circle() .foregroundColor(.pink).foregroundColor– shakl rangini o‘zgartirishning boshqa usuli.
Chegara (Stroke)
Circle()
.stroke(Color.red)
.stroke– shaklni to‘ldirish o‘rniga chegarasini chizadi.
Chegara sozlamalari
Circle()
.stroke(Color.blue, lineWidth: 30)
.stroke(Color.blue, lineWidth: 30)– ko‘k rangli, 30 piksel qalin chegara.
Maxsus chegara
Circle()
.stroke(Color.orange, style: StrokeStyle(lineWidth: 20, lineCap: .round, dash: [10]))
.stroke(style:)– chegara uslubini sozlash:lineWidth: 20– qalinliklineCap: .round– uchlar yumaloq (.butt– kvadrat)dash: [10]– chiziqcha uzunligi (uzluksiz emas, chiziqcha shaklida).
Kesib ko‘rsatish (Trim)
Circle()
.trim(from: 0.5, to: 1.0)
.stroke(Color.purple, lineWidth: 50)
.trim(from:to:)– shaklning qismini ko‘rsatadi:0.0dan1.0– to‘liq doira.0.5dan1.0– yarim doira.
.strokebilan birlashsa, masalan, yuklanish indikatori sifatida ishlatilishi mumkin.
Boshqa shakllar
Ellipse
Ellipse()
.frame(width: 200, height: 100)
- Ellipse – cho‘zinchoq doira.
.frame(width:height:)– o‘lchamni aniqlash uchun.
Capsule
Capsule(style: .circular)
.frame(width: 200, height: 100)
- Capsule – Ellipse’ga o‘xshaydi, lekin uslublari bor:
.circular– yumaloq uchlari..continuous– silliq uchlari.
- Tugmalar yoki matn fonida foydali.
Rectangle
Rectangle()
.frame(width: 300, height: 200)
- Rectangle – to‘rtburchak.
Rounded Rectangle
RoundedRectangle(cornerRadius: 10)
.frame(width: 300, height: 200)
- RoundedRectangle – yumaloq burchakli to‘rtburchak.
cornerRadius: 10– burchak radiusi (50 qilsak, kapsulaga o‘xshaydi).- Matn yoki rasmlar fonida juda ko‘p ishlatiladi.
Modifikatorlar
RoundedRectangle(cornerRadius: 10)
.frame(width: 300, height: 200)
.fill(Color.green)
.stroke(Color.red)
.trim(from: 0.5, to: 1.0)
- Barcha shakllarga
.fill,.stroke,.trimqo‘llaniladi.
Xulosa
Bu videoda SwiftUI’dagi asosiy shakllarni – Circle, Ellipse, Capsule, Rectangle va RoundedRectangle’ni ko‘rdik. Ularni qanday qo‘shish, rang, chegara va o‘lchamlarini o‘zgartirishni o‘rgandik. Keyingi videolarda shakllarni murakkablashtirish, gradientlar, maxsus ranglar va soyalarni qo‘shishni ko‘ramiz.
Bu video qisqa va sodda bo‘ldi – umid qilamanki, yoqdi! Men Nikman, bu “Swiftful Thinking”, keyingi videoda ko‘rishguncha!