Marshrut: Navigatsiya orasida
Ekranlar
Mobil ilovalar bor odatda tashkil etilgan yoqilgan bir nechta ekranlar. In Flutter, the marshrut ekranga mos keladiganlar Navigator tomonidan boshqariladi ilova vidjeti. Navigator _ vidjet navigatsiya to'plamini boshqaradi, yangi marshrutni surish yoki avvalgisiga o'tish. Ushbu bobda siz Navigatordan qanday foydalanishni o'rganasiz ilova yoʻnalishlarini boshqarish va ekranlar orasiga oʻtish animatsiyalarini qanday qoʻshish uchun vidjet.
The quyidagi mavzular bo'ladi bo'l qoplangan ichida bu bob:
Tushunish the Navigator vidjet Marshrutlarni tushunish
O'tishlarni o'rganish Exploring Qahramon animatsiyalar
Tushunish the Navigator vidjet
Mobil ilovalar ko'pincha bir nechta ekranni o'z ichiga oladi. Agar siz Android yoki iOS dasturchisi bo'lsangiz, siz ehtimol bilish haqida Faoliyat yoki ViewController sinflar bu mos ravishda ushbu platformalardagi ekranlarni ifodalaydi.
An muhim sinf ichida navigatsiya orasida ekranlar ichida Flutter hisoblanadi the Navigator vidjet bu mantiqiy tarix g'oyasi bilan ekran o'zgarishlarini boshqarish uchun javobgardir.
Flutter-dagi yangi ekran - bu boshqasining oldiga joylashtirilgan yangi vidjet. Bu ilovada mumkin bo'lgan navigatsiyani belgilaydigan Marshrutlar kontseptsiyasi tomonidan boshqariladi . Iloji boricha allaqachon bor taxmin qilingan, the Marshrut sinf hisoblanadi a yordamchi uchun Flutter uchun ish yoqilgan the navigatsiya ish jarayoni.
The asosiy futbolchilar ichida the navigatsiya qatlam bor quyidagicha :
Navigator : The Marshrut menejer
Overlay : Navigator foydalanadi bu uchun belgilang ko'rinishlar ning the marshrutlar
Marshrut : A navigatsiya oxirgi nuqta
Navigator
The Navigator vidjet hisoblanadi the asosiy futbolchi ichida the vazifa ning harakatlanuvchi dan bitta ekran uchun boshqa. Ko'pincha biz ekranlarni almashtiramiz va ular o'rtasida ma'lumotlarni uzatamiz, bu Navigator uchun yana bir muhim vazifadir. vidjet.
Navigatsiya ichida Flutter hisoblanadi qilingan ichida a stack tuzilishi. The stack tuzilishi hisoblanadi mos uchun bu vazifa, chunki uning kontseptsiyasi ekranning xatti-harakatiga juda o'xshash:
Biz bor bitta element da the yuqori ning the stack . In Navigator , the eng yuqori stekdagi element ilovaning hozirda ko'rinadigan ekranidir.
The oxirgi element kiritilgan hisoblanadi the birinchi uchun bo'l olib tashlandi dan the stack (odatda oxirgi chiqqan birinchi chiqadi ( LIFO )). Oxirgi ko'rinadigan ekran birinchi o'chiriladi.
Kabi stack, the Navigator vidjetlar asosiy usullari bor Durang() va pop() .
Overlay
In uning amalga oshirish, Navigator foydalanadi the Overlay vidjet. The quyidagi hisoblanadi dan hujjatlar :
"Qoplamalar ruxsat bering mustaqil bola vidjetlar paydo bo'ladi yoqilgan yuqori ning boshqa vidjetlar tomonidan kiritish ularni qoplamaning stekiga kiriting."
The qoplama ruxsat bering har biri ning bular vidjetlar boshqarish ularning ishtirok etish ichida the OverlayEntry yordamida qoplama ob'ektlar.
Biz qilamiz ket orqali a oz qadamlar uchun tekshirish bu the eng umumiy yo'l uchun foydalanish a Navigator va uning qoplamasi Navigator orqali navigatsiyani boshqarishning bir qancha usullarini taqdim etuvchi ilova vidjetlari, WidgetsApp , MaterialApp va CupertinoApp bilan birga. vidjet.
Navigatsiya stek/tarix
Sifatida siz allaqachon mumkin bor e'tibor bergan, the Durang() usuli qo'shadi a yangi ekran uchun the yuqori ning the
navigatsiya stack . Pop() , ichida burilish, olib tashlaydi bu dan the navigatsiya stack.
Shunday qilib, ichida xulosa, the navigatsiya stack hisoblanadi the stack ning ekranlar bu kirgan the sahna rahmat Navigatorga _ vidjetni surish() usuli.
Do'stlaringiz bilan baham: |