Back 및 Navigate 함수

표시되는 화면을 변경합니다.

개요

대부분의 앱에는 여러 화면 포함되어 있습니다. BackNavigate 함수를 사용하여 표시되는 화면을 변경합니다. 예를 들어 사용자가 해당 단추를 선택할 때 다른 화면을 표시하려는 경우 단추의 OnSelect 속성 단추를 Navigate 함수를 포함하는 수식으로 설정합니다. 해당 수식에서 페이드와 같은 시각적 전환을 지정하여 한 화면을 다른 화면으로 변경하는 방법을 제어할 수 있습니다.

BackNavigate는 표시되는 화면만 변경합니다. 현재 표시되지 않은 화면은 백그라운드에서 작업을 계속합니다. 다른 화면에서 컨트롤의 속성을 참조하는 수식을 빌드할 수 있습니다. 예를 들어, 사용자가 한 화면에서 슬라이더의 값을 변경하고, 수식에서 해당 값을 사용하는 다른 화면으로 이동하여, 새 화면에서 어떻게 적용되는지를 결정할 수 있습니다. 그런 다음, 사용자가 원래 화면으로 다시 이동하면 슬라이더가 해당 값을 유지하고 있음을 확인할 수 있습니다.

또한 사용자가 화면 간 이동할 때 컨텍스트 변수도 보존됩니다. Navigate를 사용하여 수식이 표시되는 화면에 대해 둘 이상의 컨텍스트 변수를 설정할 수 있습니다. 이는 화면 외부에서 컨텍스트 변수를 설정하는 유일한 방법입니다. 이 방법을 사용하여 화면에 매개 변수를 전달할 수 있습니다. 다른 프로그래밍 도구를 사용한 경우 이 방법은 프로시저에 매개 변수를 전달하는 것과 유사합니다.

개체의 StartScreen 속성을 사용하여 표시할 첫 번째 화면을 제어합니다.

동작 수식 내에서만 이러한 함수를 사용할 수 있습니다.

적용 대상: 캔버스 앱 모델 기반 앱

첫 번째 인수에서 표시할 화면의 이름을 지정합니다.

두 번째 인수에서 이전 화면을 새 화면으로 변경하는 방법을 지정합니다.

전환 인수 설명 데모
ScreenTransition.Cover 새 화면이 현재 화면을 덮도록 오른쪽에서 왼쪽으로 이동하여 화면으로 슬라이드됩니다. 화면 전환 커버 애니메이션.
ScreenTransition.CoverRight 새 화면이 현재 화면을 덮도록 왼쪽에서 오른쪽으로 이동하여 화면으로 슬라이드됩니다. 화면 전환 커버 오른쪽 애니메이션.
ScreenTransition.Fade 현재 화면이 서서히 사라지고 새 화면이 나타납니다. 화면 전환 페이드 애니메이션.
ScreenTransition.None (기본값) 새 화면이 현재 화면을 빠르게 대체합니다. 화면 전환 없음 애니메이션.
ScreenTransition.UnCover 현재 화면이 새 화면에서 오른쪽에서 왼쪽으로 이동하여 화면으로 밖으로 슬라이드됩니다. 화면 전환 언커버 애니메이션.
ScreenTransition.UnCoverRight 현재 화면이 새 화면에서 왼쪽에서 오른쪽으로 이동하여 화면으로 밖으로 슬라이드됩니다. 화면 전환 언커버 오른쪽 애니메이션.

Navigate를 사용하여 새 화면의 컨텍스트 변수를 만들거나 업데이트할 수 있습니다. 선택 사항인 세 번째 인수처럼 컨텍스트 변수의 이름을 포함하는 레코드 이름 및 컨텍스트 변수의 새 값으로 전달합니다. 이 레코드는 UpdateContext 함수로 사용한 레코드와 동일합니다.

전환하는 동안 추가적인 변경을 수행하려면 이전 화면의 OnHidden 속성 또는 새 화면의 OnVisible 속성을 설정합니다. App.ActiveScreen 속성은 변경 내용을 반영하도록 업데이트됩니다.

Navigate는 일반적으로 true를 반환하지만 오류가 있으면 false를 반환합니다.

탐색을 위한 컨텍스트 변수는 화면 간 탐색에 설명되어 있습니다.

백스페이스

적용 대상: 캔버스 앱

Back 함수는 가장 최근에 표시된 화면으로 돌아갑니다.

Navigate 호출에 앱이 나타난 화면과 전환을 추적합니다. 연속적인 Back 호출을 사용해 사용자가 앱을 시작했을 때 나타나는 화면으로 돌아갈 수 있습니다.

Back 함수가 실행될 때 기본적으로 역 전환이 사용됩니다. 예를 들어 화면이 CoverRight 전환을 통해 나타나면 BackUnCover(왼쪽으로)를 사용해 돌아갑니다. FadeNone은 각각 반대입니다. 선택적 인수 Back으로 전달해 특정 전환을 강제합니다.

Back은 일반적으로 true를 반환하지만 사용자가 앱을 시작 후 다른 화면으로 이동하지 않은 경우 false를 반환합니다.

구문

Back( [ Transition ] )

  • Transition - 선택 사항입니다. 현재 화면과 이전 화면 간에 사용할 시각적 전환입니다. 이 문서의 앞부분에 있는 이 인수에 대한 유효한 값 목록을 참조하십시오. 기본적으로 화면이 되돌아가는 전환은 화면이 나타난 전환의 반대입니다.

Navigate( Screen [, Transition [, UpdateContextRecord ] ] )

  • Screen - 필수 항목입니다. 표시할 화면입니다. 화면 대신 탐색하려는 화면에 있는 컨트롤을 사용할 수도 있습니다.
  • Transition - 선택 사항입니다. 현재 화면과 다음 화면 간에 사용할 시각적 전환입니다. 이 문서의 앞부분에 있는 이 인수에 대한 유효한 값 목록을 참조하십시오. 기본 값은 None입니다.
  • UpdateContextRecord - 선택 사항입니다. 하나 이상의 열 이름 및 각 열에 대한 값을 포함하는 레코드입니다. 이 레코드는 UpdateContext 함수에 전달된 경우처럼 새 화면의 컨텍스트 변수를 업데이트합니다.

예제

수식 설명 결과
Navigate( Details ) 컨텍스트 변수에 대한 값으로 전환 또는 변경되지 않은 Details 화면을 표시합니다. Details 화면이 빠르게 나타납니다.
Navigate( Details, ScreenTransition.Fade ) Fade 전환을 사용하여 Details 화면이 표시됩니다. 컨텍스트 변수의 값이 변경되지 않습니다. 현재 화면이 서서히 사라지면서 Details 화면이 표시됩니다.
Navigate( Details, ScreenTransition.Fade, { ID: 12 } ) Fade 전환을 사용하여 Details 화면이 표시되고 ID 컨텍스트 변수의 값이 12로 업데이트됩니다. 현재 화면이 서서히 사라지면서 Details 화면이 표시되고, 화면의 컨텍스트 변수 ID12로 설정됩니다.
Navigate( Details, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } ) Fade 전환을 사용하여 Details 화면이 표시됩니다. ID 컨텍스트 변수의 값이 12로 업데이트되고, Shade 컨텍스트 변수의 값이 Color.Red로 업데이트됩니다. 현재 화면이 서서히 사라지면서 Details 화면이 표시됩니다. Details 화면의 컨텍스트 변수 ID12로 설정되고, 컨텍스트 변수 ShadeColor.Red로 설정됩니다. Details 화면에서 컨트롤의 Fill 속성을 Shade로 설정하는 경우 해당 컨트롤이 빨간색으로 표시됩니다.
Back() 기본 리턴 전환으로 이전 화면을 표시합니다. 현재 화면이 나타나는 전환의 역 전환을 통해 이전 화면을 표시합니다.
Back( ScreenTransition.Cover ) Cover 전환으로 이전 화면을 표시합니다. 현재 화면이 나타나는 전환과 관계 없이 Cover 전환을 통해 이전 화면을 표시합니다.

단계

  1. 빈 앱 만들기.

  2. 두 번째 화면을 추가합니다.

    이 앱에는 두 빈 화면인 Screen1Screen2가 있습니다.

  3. Screen2Fill 속성을 Gray 값으로 설정합니다.

  4. Screen2에서 단추를 추가하고 OnSelect 속성을 다음 수식으로 설정합니다.

    Navigate( Screen1, ScreenTransition.Cover )
    
  5. Alt 키를 누른 상태에서 단추를 선택합니다.

    Screen1이 왼쪽에 있는 전환을 통해 흰색 배경으로 나타납니다.

  6. Screen1에서 단추를 추가하고 OnSelect 속성을 다음 수식으로 설정합니다.

    Back()
    
  7. Alt 키를 누른 상태에서 단추를 선택합니다.

    두 번째 화면은 오른쪽으로의 전환(Cover 반대)을 통해 회색 배경으로 나타납니다.

  8. 각 화면에서 단추를 반복해서 선택하여 앞뒤로 움직입니다.

참고 항목:

컨텍스트 변수 사용