Flutter ramka uchun qo'llanma 1-bob. Flutterga kirish Flutter nima. O'rnatish
Download 1.13 Mb.
|
Flutter ramka uchun qo\'llanma 1-bob. Flutterga kirish Flutter ni
StackStack konteyneri sizga elementlarni boshqalarning ustiga joylashtirish imkonini beradi. Stack vidjetini yaratish uchun quyidagi konstruktordan foydalaniladi:
Uning parametrlari: kalit: vidjet kaliti hizalama: ichki o'rnatilgan vidjetlar o'rnini o'rnatadi textDirection: ichki joylashtirilgan elementlarning gorizontal tartibini belgilaydi mos: o'rnatilgan vidjetlar uchun o'lchamlarni belgilaydi overflow: ichki o'rnatilgan kontentni kesish yoki kesish kerakligini belgilaydi clipBehavior: ichki oʻrnatilgan elementlar qanday qilib kesilishini belgilaydi bolalar: ichki o'rnatilgan elementlar to'plami Konteyner vidjetlari to‘plamini o‘z ichiga oladigan Stack vidjetini aniqlaymiz:
Bunday holda, Stack uchta konteyner elementini o'z ichiga oladi, ular ketma-ket bir-birining ustiga qo'yiladi. Shuni ta'kidlash kerakki, bu holda textDirection xususiyatini ham o'rnatish kerak Odatiy bo'lib, ichki o'rnatilgan vidjetlar Stack elementining yuqori chap burchagida joylashgan (sukut bo'yicha alignment xususiyati AlignmentDirectional.topStart ga o'rnatiladi), lekin tabiiyki, AlignmentGeometry turini ifodalovchi alignment xususiyatidan foydalanib, biz pozitsiyani bekor qilishimiz mumkin. quyidagi qiymatlardan biriga ega ichki vidjetlar: AlignmentDirectional.topStart: element boshida yuqori tekislash (agar matn yo'nalishi chapdan o'ngga bo'lsa, boshlang'ich chap chegara, matn o'ngdan chapga yo'naltirilganda, boshlang'ich o'ng chegara hisoblanadi)
AlignmentDirectional.topEnd: element oxirida yuqori tekislash (agar matn yo'nalishi chapdan o'ngga bo'lsa, boshlang'ich o'ng chegara bo'ladi, matn o'ngdan chapga bo'lsa, boshlang'ich chap chegara hisoblanadi) AlignmentDirectional.topCenter: yuqori markazga tekislash < AlignmentDirectional.bottomStart: Element boshida pastki tekislash AlignmentDirectional.bottomEnd: Element oxiridagi pastki tekislash AlignmentDirectional.bottomCenter: pastki markazni tekislash li>
AlignmentDirectional.center: markazga gorizontal va vertikal tekislash. Alignment.centerStart: konteyner boshida markazga tekislash Alignment.centerEnd: konteyner oxirida markazga tekislash Masalan, vidjetlarni markazga joylashtiramiz:
Joylashtirilgan vidjet Yuqoridagi misollarda ichki o'rnatilgan vidjetlarning joylashuvi hizalama xususiyati bilan aniqlangan. Bundan tashqari, biz har bir ichki o'rnatilgan element uchun joylashuvni aniq belgilash uchun Positioned vidjetidan foydalanishimiz mumkin. Ushbu vidjetni yaratish uchun quyidagi konstruktorlardan birini ishlating: Positioned.directional ({Key key key, @required TextDirection textDirection, double start, double top, double end, double tub, double en, double height, @required Widget child}): parametrlarni o‘rnatish orqali ichki o‘rnatilgan vidjet o‘rnini belgilaydi:
start: elementning boshlanishi (matn chapdan o'ngga yo'naltirilganda chap chegara va matn o'ngdan chapga yo'naltirilganda o'ng chegara end: elementning oxiri (matn chapdan o'ngga yo'naltirilganda o'ng chegara va matn o'ngdan chapga yo'naltirilganda chap chegara tepa: elementning yuqori chegarasi pastki: elementning pastki chegarasi kenglik: o'rnatilgan elementning kengligi balandlik: o'rnatilgan elementning balandligi Positioned.fill ({Kalit tugmasi, ikki chap: 0,0, ikkita yuqori: 0,0, ikki tomonlama o'ng: 0,0, ikkita pastki: 0,0, @required Vidjet bolasi}): parametrlarni o'rnatish orqali ichki o'rnatilgan vidjetning joylashishini aniqlaydi:
chap: elementning chap chegarasi o'ng: elementning o'ng chegarasi tepa: elementning yuqori chegarasi pastki: elementning pastki chegarasi kenglik: o'rnatilgan elementning kengligi balandlik: o'rnatilgan elementning balandligi Positioned.fromRect ({Key key, Rect rect, @required Widget child}): o‘rnatilgan elementning joylashuvi va o‘lchami Rect obyekti yordamida o‘rnatiladi.
Positioned.fromRelativeRect ({Key key, RelativeRect rect, @required Widget child}): o‘rnatilgan elementning joylashuvi va o‘lchami RelativeRect obyekti yordamida o‘rnatiladi. Masalan, Matn vidjetini Positioned-ga qo'ying:
Bunday holda, Matn vidjeti mos ravishda Stack konteynerining yuqori va chap chegaralaridan 20 birlik pastga va o'ngga joylashtiriladi. StackFit
StackFit.loosen: ichki o'rnatilgan vidjetlar konteyner hajmidan oshmaydigan har qanday hajmni oladi. Standart qiymat. StackFit qiymati (0) / kod> ga mos keladi StackFit.expand: O'rnatilgan vidjetlar mavjud bo'lgan eng katta o'lchamlarni oladi. StackFit qiymatiga mos keladi (1) Misol uchun, StackFit.expand yordamida ichkariga o'rnatilgan konteyner vidjetini Stack konteynerining to'liq uzunligi va kengligigacha uzaytiramiz:
Bundan tashqari, ikkita konteyner elementi mavjudligiga qaramay, ikkalasi ham mos ravishda bir xil balandlik va kenglikni oladi, biz faqat bitta vidjetni ko'ramiz. Download 1.13 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling