Делите путем


Назад и навигацијске функције

Мења екран који се приказује.

Преглед

Већина апликација садржи више екрана. Користите функцију Back и Navigate да промените екран који се приказује. На пример, поставите својство OnSelect дугмета према формули која укључује функцију Navigate ако желите да прикажете други екран када корисник одабере то дугме. У тој формули можете одредити визуелни прелаз, као што је Fade, да бисте контролисали како се један екран мења у други.

Назад и навигација променити само који екран се приказује. Екрани који тренутно нису приказани и даље раде у позадини. Можете саставити формуле које се односе на својства контрола на другим екранима. На пример, корисник може да промени вредност клизача на једном екрану, пређе на други екран који користи ту вредност у формули и утврди како она утиче на оно што се дешава на новом екрану. Тада корисник може да се врати на оригинални екран и потврди да је клизач задржао своју вредност.

Контекстне варијабле се такође чувају када корисник навигира између екрана. Можете користити Navigate да подесите једну или више променљивих контекста за екран који ће формула приказати, што је једини начин да се променљива контекста постави изван екрана. Можете користити овај приступ да бисте параметре проследили на екран. Ако сте користили други алат за програмирање, овај приступ је сличан прослеђивању параметара у процедуре.

Користите својство StartScreen објекта App да бисте контролисали први екран који ће бити приказан.

Можете користити било коју функцију само у оквиру формуле понашања.

Односи се на: Цанвас апликације Апликације засноване на моделу

У првом аргументу наведите име екрана који ће се приказати.

У другом аргументу наведите како се стари екран мења у нови екран:

Аргумент прелаза Опис Демонстрација
СцреенТранситион.Цовер Нови екран клиза у приказ, премештајући се здесна налево, како би покрио тренутни екран. анимација покривања прелаза екрана.
СцреенТранситион.ЦоверРигхт Нови екран клиза у приказ, премештајући се слева надесно, како би покрио тренутни екран. анимација покривања прелаза екрана надесно.
СцреенТранситион.Фаде Тренутни екран бледи да би се открио нови екран. анимација блеђења прелаза екрана.
СцреенТранситион .Ноне (подразумевано) Нови екран брзо замењује тренутни екран. без анимације прелаза екрана.
СцреенТранситион.УнЦовер Тренутни екран клиза ван приказа, померајући се слева надесно, како би открио нови екран. анимација откривања прелаза екрана.
СцреенТранситион.УнЦоверРигхт Тренутни екран клиза ван приказа, померајући се здесна налево, како би открио нови екран. анимација откривања прелаза екрана здесна.

Можете користити Navigate да бисте креирали или ажурирали променљиве контекста новог екрана. Као опционални трећи аргумент, проследите запис који садржи назив променљиве контекста као назив колоне и нову вредност променљиве контекста. Овај запис је исти као и запис који користите са функцијом UpdateContext.

Подесите својство OnHidden старог екрана, OnVisible својство новог екрана, или оба да бисте извршили додатне промене током прелаза. Својство App.ActiveScreen ће бити ажурирано како би одражавало промену.

Навигација нормално враћа труе , али ће вратити лаж ако се наиђе на грешку.

Променљиве контекста за навигацију су објашњене у чланку кретање између екрана.

Назад

Односи се на: Цанвас апликације

Функција Back се враћа на екран који је последњи приказан.

За сваки позив функције Navigate, апликација прати екран који се појавио и прелаз. Можете користити узастопне позиве Back да се вратите до екрана који се појавио када је корисник покренуо апликацију.

Када функција Back ради, обрнути прелаз се подразумевано користи. На пример, ако се екран појавио кроз прелаз CoverRight, Back користи UnCover (што је налево) да се врати. Фаде и Ноне су њихови сопствени инверзи. Проследите опционални аргумент функцији Back да бисте приморали одређени прелаз.

Назад нормално враћа труе , али враћа фалсе ако корисник није прешао на други екран од покретања апликације.

Синтакса

Назад ( [ Транзиција ] )

  • Транзиција - Опционо. Визуелни прелаз који треба користити за прелаз између тренутног и претходног екрана. Погледајте листу валидних вредности за овај аргумент раније у овом чланку. Подразумевано, прелаз са којим се екран враћа је обрнут од прелаза са којим се појавио.

Навигате ( Сцреен [, Транситион [, УпдатеЦонтеxтРецорд ] ] )

  • Екран - Обавезно. Запис за приказивање. Уместо екрана , можете користити и контролу која се налази на екрану на који желите да се крећете.
  • Транзиција - Опционо. Визуелни прелаз који треба користити за прелаз између тренутног и следећег екрана. Погледајте листу валидних вредности за овај аргумент раније у овом чланку. Подразумевана вредност је Ниједно.
  • УпдатеЦонтеxтРецорд - Опционо. Запис који садржи име најмање једне колоне и вредност за сваку колону. Овај запис ажурира променљиве контекста новог екрана као да је прешао на функцију UpdateContext.

Примери

Формула Опис Резултат
Навигате ( Детаљи ) Приказује екран Детаљи без прелаза или промене вредности за променљиву контекста. Екран Детаљи се брзо појављује.
Навигате ( Детаљи, СцреенТранситион.Фаде ) Приказује екран Детаљи са прелазом Fade. Није промењена вредност променљиве контекста. Тренутни екран бледи да би се приказао екран Детаљи.
Навигате ( Детаљи, СцреенТранситион.Фаде,ИД { : 12 } ) Приказује екран Детаљи са прелазом Fade, а ажурира вредност променљиве ID контекста на 12. Тренутни екран бледи да би се приказао екран Детаљи, а променљива ID контекста на том екрану је постављена на 12.
Навигате ( Детаљи, СцреенТранситион.Фаде, { ИД: 12, Нијанса: Цолор.Ред } ) Приказује екран Детаљи са прелазом Fade. Ажурира вредност променљиве ID контекста на 12, а и ажурира вредност променљиве Сенка контекста на Color.Red. Тренутни екран бледи да би се приказао екран Детаљи. Променљива контекста ID на екрану Детаљи је постављена на 12 и променљива контекста Сенка је подешен на Color.Red. Ако поставите својство Попуна контроле на екрану Детаљи за Сенка, та контрола ће се приказати црвеном бојом.
Назад() Приказује претходни екран са подразумеваним повратним прелазом. Приказује предходни екран путем обрнутог прелаза од оног са којим се појавио тренутни екран.
Назад (СцреенТранситион.Цовер) Приказује претходни екран са Cover прелазом. Приказује предходни екран путем прелаза Cover, без обзира на онај са којим се појавио тренутни екран.

Корак по корак

  1. Креирање празне апликације.

  2. Додавање другог екрана у њој.

    Апликација садржи два празна екрана: Screen1 и Screen2.

  3. Поставите својство Попуна на Screen2 на вредност Gray.

  4. На Screen2 додајте дугме, а подесите његово својство OnSelect према овој формули:

    Navigate( Screen1, ScreenTransition.Cover )
    
  5. Док држите тастер Alt притиснутим, изаберите дугме.

    СцреенКСНУМКС се појављује са белом позадином кроз прелаз који покрива са леве стране.

  6. На Screen1 додајте дугме, а подесите његово својство OnSelect према овој формули:

    Back()
    
  7. Док држите тастер Alt притиснутим, изаберите дугме.

    Други екран се појављује са сивом позадином кроз прелаз који открива надесно (обрнуто од Cover).

  8. Изаберите дугме на сваком екрану неколико пута да бисте се одбијали напред и назад.

Погледајте и

Коришћење контекстних променљивих