- Published on
Profil kartasini yaratish
- Authors
- Name
- ShoxruxC
- @iOSdasturchi
Bu Stage 1 bosqichidagi barcha o'rganilgan mavzularni birlashtiradigan kichik loyiha (mini-loyiha) hisoblanadi. Siz faqat shu paytgacha o'rgangan narsalaringizdan foydalanib, butunlay noldan boshlab aylanma avatar, ism, sarlavha, statistika qatori va follow tugmasidan iborat mukammal profil kartasini yaratasiz.
Ushbu darsda yangi tushunchalar o'rganilmaydi. Bu yerda hamma narsa Text, Image, VStack, HStack, ZStack va modifikatorlardan iborat. Yangilik shundaki, biz ularni birgalikda maqsadli tarzda yig'amiz, kod yozishdan oldin tartib (layout) haqida o'ylaymiz va yakunda haqiqiy ilovalarga mos keladigan interfeysni yaratamiz.
Har bir qadamni ketma-ketlikda bajaring. Keyingi bosqichga o'tishdan oldin canvas preview oynangizni tekshirib boring. Maqsad tezroq tugatish emas, balki har bir qismning nima qilayotganini va nima uchun kerakligini tushunib yetishdir.
1-qadam: avatar
Yangi ContentView ochib, ishlashni avval avatardan boshlang. Profil rasmi kabi ko'rinishi uchun shakllantirilgan aylanma SF Symbol ikonkasini yarating.
2-qadam: ism va sarlavhani qo'shish
Avatarni VStack konteyneriga o'rab oling, uning tagiga ism va taglavhani qo'shing.
3-qadam: statistika qatorini qo'shish
Ism ostiga gorizontal statistika qatorini qo'shing. Spacer yordamida teng ravishda taqsimlangan uchta statistika β Postlar, Kuzatuvchilar, Kuzatilayotganlar joylashadi.
4-qadam: kuzatish tugmasi va yakuniy padding'ni qo'shish
Eng oxirgi qism β butun kenglik bo'ylab cho'zilgan Kuzatish tugmasi va kartaga biroz erkin nafas berish uchun umumiy padding qo'llash.
π‘ Siz hozirgina haqiqiy narsa yaratdingiz:
Canvas preview oynasida ko'rib turganingiz professional darajadagi haqiqiy SwiftUI komponentidir. Ushbu tartib andozasi β avatar, ism, statistika va harakat tugmasi β Twitter, Instagram, LinkedIn, GitHub va yuzlab boshqa ilovalarda uchraydi. Uni yaratish uchun hozirgina ishlatgan fundamental tushunchalaringiz barchasining asosida yotadi.
β οΈ Tugma hozircha hech narsa qilmaydi:
Bu ataylab shunday qilingan. Ko'rinishlarni bosish va holat o'zgarishlariga javob beradigan qilish uchun@Statekerak β bu Stage 2 darslarining mavzusidir. Hozircha asosiy maqsad tartibni qurishni o'rganish edi. Harakatlar keyinroq qo'shiladi.
To'liq profil kartasi
Sun'iy intellektdan chuqurroq o'rganish uchun foydalanish
1. Tushunchalarni chuqurlashtirish (ai'dan repetitor sifatida foydalaning):
- "Men hozirgina yaratgan SwiftUI profil kartasi kodi: [kodni joylashtiring]. Layout ichidagi har bir VStack va HStack-ning vazifasini hech narsani o'zgartirmasdan tushuntirib bera olasizmi? Biror narsani o'zgartirishdan oldin har bir konteyner nima uchun u yerda ekanligini tushunib olishni xohlayman."
- "Ushbu profil kartasi tartibiga qarab, agar men quyidagilarni xohlasam nimalarni o'zgartirishim kerak bo'ladi: (1) taglavha ostiga tarjimai hol (bio) matnini qo'shish, (2) avatarni aylanma shaklda hoshiya (border) bilan qilish, (3) "Follow" tugmasi yoniga "Message" tugmasini qo'shish? Kod yozmasdan, shunchaki qanday o'zgarishlar kiritishim kerakligini va qaysi tushunchalar ishtirok etishini tushuntiring."
2. Amaliy ko'rinish yaratish (xcode-da sinab ko'rish uchun):
- "Boshqa layout uslubida SwiftUI profil kartasini yozib bering β masalan, avatar chap tomonda, ism, taglavha va statistika esa o'ng tomonda vertikal joylashgan gorizontal tartib (ixcham kontakt qatori kabi). Har bir qatorning tepasida tuzilish qarorlarini tushuntiruvchi izoh yozing. Faqat Text, Image, VStack, HStack va modifikatorlardan foydalaning β boshqa hech qanday tushuncha aralashmasin."
π― Topshiriq: profil kartasini moslashtirish
Siz hozirgina qurgan profil kartasini uchta usulda o'zgartiring. Birinchidan, urg'u (accent) rangini ko'kdan boshqa professional ko'rinadigan rangga o'zgartiring (yashil, indigo yoki to'q ko'k kabi ranglarni sinab ko'ring β qizil rangdan saqlaning, chunki u ogohlantirishni bildiradi). Ikkinchidan, taglavha ostiga to'rtinchi qatorni qo'shing: HStack ichida Image(systemName: "location.fill") ikonkasidan foydalangan holda joylashuv qatori bo'lsin. Uchinchidan, Kuzatish tugmasini "Kuzatilmoqda" deb o'zgartiring va uning fon rangini o'zgargan holatni bildirish uchun kulrang qiling. Siz buni 2-bosqichda interaktiv qilasiz β hozircha esa shunchaki statik ravishda to'g'ri ko'rinishga keltiring. Davom etishdan oldin canvas preview oynasida barcha o'zgarishlarni tekshiring.
π‘ Maslahat:
Joylashuv qatori uchun ikonka va matnni 4 masofali (spacing: 4) HStack ichiga o'rang. Ikonkaning foregroundStyle-ni siz tanlagan urg'u rangiga moslang. "Kuzatilmoqda" tugmasi uchun.background(.blue)modifikatorini.background(.gray.opacity(0.2))modifikatoriga almashtiring, shuningdek.foregroundStyle(.white)o'rniga.foregroundStyle(.primary)yozing.
Stage 1 xulosasi: birinchi SwiftUI view'ingiz
Oltita darsdan so'ng, siz Swift mantiqidan ko'rinadigan, real UI (foydalanuvchi interfeysi) yaratishga qadam qo'ydingiz. Mana siz o'rgangan mavzular:
SwiftUI nima va u qanday fikrlaydi:Deklarativ fikrlash modeli β siz interfeys qanday ko'rinishi kerakligini tasvirlaysiz va SwiftUI uni render qilishni o'zi boshqaradi. Har bir SwiftUI View body xususiyatiga ega struct hisoblanadi.Birinchi ko'rinishingiz: text, image, button:Har bir SwiftUI interfeysi quriladigan uchta asosiy ko'rinish va har bir SwiftUI faylida mavjud bo'lgan ContentView tuzilishi.Modifikatorlar:Modifikatorlarni zanjir kabi ketma-ket ulash orqali viewlarni qanday jihozlash va formatlash, ularning tartibi nima uchun muhimligi hamda eng muhim modifikatorlar: font, foregroundStyle, padding, background, cornerRadius va frame.VStack, HStack, ZStack:Viewlarni vertikal, gorizontal va qatlamlar shaklida joylashtiradigan uchta layout konteyneri hamda ularni ichma-ich joylashtirish va Spacer yordamida elementlar orasidagi masofani boshqarish.Canvas preview va simulator:Canvas preview'dan samarali foydalanish, turli qurilma o'lchamlari va rang sxemalarida ko'rish, ilovangizni simulator-da ishga tushirish va preview qotib qolganda uni qayta tiklash.Profil kartasini yaratish:1.1-dan1.5-gacha bo'lgan barcha o'rganilgan darslarni birlashtiruvchi to'liq mini-loyiha β Text, Image, VStack, HStack va modifikatorlar yordamida bosqichma-bosqich yig'ilgan professional darajadagi ko'rinish.
Agar darslar davomida biror topshiriqni (challenge) bajarmagan bo'lsangiz, orqaga qaytib ularni bajaring. Ayniqsa, profil kartasini ikki marta qurish tavsiya etiladi β birinchisida bosqichma-bosqich qo'llanmaga qarab, ikkinchisida esa butunlay noldan, kodga qaramasdan mustaqil ravishda. Aynan o'sha ikkinchi urinishda haqiqiy o'rganish sodir bo'ladi.
Stage 2 darslarida viewlaringiz jonlanadi. Siz State va ma'lumotlar oqimi (State and Data Flow) β viewlarni bosishga qanday javob beradigan qilish, foydalanuvchi kiritgan ma'lumotlarni kuzatish va ma'lumotlar o'zgarganda ekranni qanday avtomatik ravishda yangilashni o'rganasiz. Statik tartiblar β bu shunchaki boshlanishi. Ko'rinishlaringiz ma'lumotlarga mos ravishda reaksiyaga kirishishni boshlagach, siz haqiqiy ilova hissini beradigan dasturlarni yarata boshlaysiz.