Back 및 Navigate 함수
표시되는 화면을 변경합니다.
개요
대부분의 앱에는 여러 화면 포함되어 있습니다. Back 및 Navigate 함수를 사용하여 표시되는 화면을 변경합니다. 예를 들어 사용자가 해당 단추를 선택할 때 다른 화면을 표시하려는 경우 단추의 OnSelect 속성 단추를 Navigate 함수를 포함하는 수식으로 설정합니다. 해당 수식에서 페이드와 같은 시각적 전환을 지정하여 한 화면을 다른 화면으로 변경하는 방법을 제어할 수 있습니다.
뒤로 와 탐색 은 표시되는 화면만 변경합니다. 현재 표시되지 않은 화면은 백그라운드에서 작업을 계속합니다. 다른 화면에서 컨트롤의 속성을 참조하는 수식을 빌드할 수 있습니다. 예를 들어, 사용자가 한 화면에서 슬라이더의 값을 변경하고, 수식에서 해당 값을 사용하는 다른 화면으로 이동하여, 새 화면에서 어떻게 적용되는지를 결정할 수 있습니다. 그런 다음, 사용자가 원래 화면으로 다시 이동하면 슬라이더가 해당 값을 유지하고 있음을 확인할 수 있습니다.
사용자가 화면을 전환할 때에도 컨텍스트 변수는 유지됩니다. Navigate를 사용하여 수식이 표시되는 화면에 대해 둘 이상의 컨텍스트 변수를 설정할 수 있습니다. 이는 화면 외부에서 컨텍스트 변수를 설정하는 유일한 방법입니다. 이 방법을 사용하여 화면에 매개 변수를 전달할 수 있습니다. 다른 프로그래밍 도구를 사용한 경우 이 방법은 프로시저에 매개 변수를 전달하는 것과 유사합니다.
앱 개체의 StartScreen 속성을 사용하여 표시할 첫 번째 화면을 제어합니다.
동작 수식 내에서만 이러한 함수를 사용할 수 있습니다.
이동
적용 대상: Canvas 앱 모델 기반 앱
첫 번째 인수에서 표시할 화면의 이름을 지정합니다.
두 번째 인수에서 이전 화면을 새 화면으로 변경하는 방법을 지정합니다.
전환 인수 | 설명 | 데모 |
---|---|---|
화면 전환.커버 | 새 화면이 현재 화면을 덮도록 오른쪽에서 왼쪽으로 이동하여 화면으로 슬라이드됩니다. | |
화면 전환.커버 오른쪽 | 새 화면이 현재 화면을 덮도록 왼쪽에서 오른쪽으로 이동하여 화면으로 슬라이드됩니다. | |
화면 전환.페이드 | 현재 화면이 서서히 사라지고 새 화면이 나타납니다. | |
ScreenTransition.None (기본값) | 새 화면이 현재 화면을 빠르게 대체합니다. | |
화면 전환.UnCover | 현재 화면이 새 화면에서 오른쪽에서 왼쪽으로 이동하여 화면으로 밖으로 슬라이드됩니다. | |
화면 전환.UnCoverRight | 현재 화면이 새 화면에서 왼쪽에서 오른쪽으로 이동하여 화면으로 밖으로 슬라이드됩니다. |
Navigate를 사용하여 새 화면의 컨텍스트 변수를 만들거나 업데이트할 수 있습니다. 선택 사항인 세 번째 인수처럼 컨텍스트 변수의 이름을 포함하는 레코드를 열 이름 및 컨텍스트 변수의 새 값으로 전달합니다. 이 레코드는 UpdateContext 함수로 사용한 레코드와 동일합니다.
전환하는 동안 추가적인 변경을 수행하려면 이전 화면의 OnHidden 속성 또는 새 화면의 OnVisible 속성을 설정합니다. App.ActiveScreen 속성은 변경 내용을 반영하도록 업데이트됩니다.
Navigate 는 일반적으로 true 를 반환하지만 오류가 발생하면 false 를 반환합니다.
탐색을 위한 컨텍스트 변수는 화면 간 탐색에 설명되어 있습니다.
백스페이스
적용 대상: Canvas 앱
Back 함수는 가장 최근에 표시된 화면으로 돌아갑니다.
각 Navigate 호출에 앱이 나타난 화면과 전환을 추적합니다. 연속적인 Back 호출을 사용해 사용자가 앱을 시작했을 때 나타나는 화면으로 돌아갈 수 있습니다.
Back 함수가 실행될 때 기본적으로 역 전환이 사용됩니다. 예를 들어 화면이 CoverRight 전환을 통해 나타나면 Back은 UnCover(왼쪽으로)를 사용해 돌아갑니다. Fade 와 None 은 그 자체로 역입니다. 선택적 인수 Back으로 전달해 특정 전환을 강제합니다.
Back 은 일반적으로 true 를 반환하지만, 앱을 시작한 후 사용자가 다른 화면으로 이동하지 않은 경우 false 를 반환합니다.
구문
뒤로( [ 전환 ] )
- 전환 - 선택 사항. 현재 화면과 이전 화면 간에 사용할 시각적 전환입니다. 이 문서의 앞부분에 있는 이 인수에 대한 유효한 값 목록을 참조하십시오. 기본적으로 화면이 되돌아가는 전환은 화면이 나타난 전환의 반대입니다.
탐색( 화면 [, 전환 [, UpdateContextRecord ] ])
- 화면 - 필수. 표시할 화면입니다. 화면 대신 탐색하려는 화면에 있는 컨트롤을 사용할 수도 있습니다.
- 전환 - 선택 사항. 현재 화면과 다음 화면 간에 사용할 시각적 전환입니다. 이 문서의 앞부분에 있는 이 인수에 대한 유효한 값 목록을 참조하십시오. 기본 값은 None입니다.
- UpdateContextRecord - 선택 사항. 하나 이상의 열 이름 및 각 열에 대한 값을 포함하는 레코드입니다. 이 레코드는 UpdateContext 함수에 전달된 경우처럼 새 화면의 컨텍스트 변수를 업데이트합니다.
예제
수식 | 설명 | 결과 |
---|---|---|
탐색( 세부정보 ) | 컨텍스트 변수에 대한 값으로 전환 또는 변경되지 않은 Details 화면을 표시합니다. | Details 화면이 빠르게 나타납니다. |
탐색(세부정보, ScreenTransition.Fade) | Fade 전환을 사용하여 Details 화면이 표시됩니다. 컨텍스트 변수의 값이 변경되지 않습니다. | 현재 화면이 서서히 사라지면서 Details 화면이 표시됩니다. |
탐색(세부정보, ScreenTransition.Fade, { ID: 12 } ) | Fade 전환을 사용하여 Details 화면이 표시되고 ID 컨텍스트 변수의 값이 12로 업데이트됩니다. | 현재 화면이 서서히 사라지면서 Details 화면이 표시되고, 화면의 컨텍스트 변수 ID가 12로 설정됩니다. |
탐색(세부정보, ScreenTransition.Fade, { ID: 12, 음영: Color.Red } ) | Fade 전환을 사용하여 Details 화면이 표시됩니다. ID 컨텍스트 변수의 값이 12로 업데이트되고, Shade 컨텍스트 변수의 값이 Color.Red로 업데이트됩니다. | 현재 화면이 서서히 사라지면서 Details 화면이 표시됩니다. Details 화면의 컨텍스트 변수 ID가 12로 설정되고, 컨텍스트 변수 Shade가 Color.Red로 설정됩니다. Details 화면에서 컨트롤의 Fill 속성을 Shade로 설정하는 경우 해당 컨트롤이 빨간색으로 표시됩니다. |
뒤쪽에() | 기본 리턴 전환으로 이전 화면을 표시합니다. | 현재 화면이 나타나는 전환의 역 전환을 통해 이전 화면을 표시합니다. |
뒤로( ScreenTransition.Cover ) | Cover 전환으로 이전 화면을 표시합니다. | 현재 화면이 나타나는 전환과 관계 없이 Cover 전환을 통해 이전 화면을 표시합니다. |
단계
빈 앱 만들기.
두 번째 화면을 추가합니다.
이 앱에는 두 빈 화면인 Screen1 및 Screen2가 있습니다.
Screen2의 Fill 속성을
Gray
값으로 설정합니다.Screen2에서 단추를 추가하고 OnSelect 속성을 다음 수식으로 설정합니다.
Navigate( Screen1, ScreenTransition.Cover )
Alt 키를 누른 상태에서 단추를 선택합니다.
Screen1 은 왼쪽으로 펼쳐지는 전환을 통해 흰색 배경으로 나타납니다.
Screen1에서 단추를 추가하고 OnSelect 속성을 다음 수식으로 설정합니다.
Back()
Alt 키를 누른 상태에서 단추를 선택합니다.
두 번째 화면은 오른쪽으로의 전환(Cover 반대)을 통해 회색 배경으로 나타납니다.
각 화면에서 단추를 반복해서 선택하여 앞뒤로 움직입니다.