Funções Voltar e Navegar no PowerAppsBack and Navigate functions in PowerApps

Altera qual tela é exibida.Changes which screen is displayed.

Visão geralOverview

A maioria dos aplicativos contêm várias telas.Most apps contain multiple screens. Use a função Voltar e Navegar para alterar qual tela será exibida.Use the Back and Navigate function to change which screen is displayed. Por exemplo, defina a propriedade OnSelect de um botão como uma fórmula que inclui uma função Navegar se desejar mostrar uma tela diferente quando um usuário seleciona esse botão.For example, set the OnSelect property of a button to a formula that includes a Navigate function if you want to show a different screen when a user selects that button. Nessa fórmula, você pode especificar uma transição visual, como Fade para controlar como uma tela muda para outra.In that formula, you can specify a visual transition, such as Fade, to control how one screen changes to another.

Voltar e Navegar alteram apenas qual tela será exibida.Back and Navigate change only which screen is displayed. As telas não exibidas no momento continuam em operação por trás dos bastidores.Screens that aren't currently displayed continue to operate behind the scenes. Você pode criar fórmulas que fazem referência às propriedades de controles em outra tela.You can build formulas that refer to properties of controls on another screen. Por exemplo, um usuário pode alterar o valor de um controle deslizante em uma única tela, navegar até uma tela diferente que usa esse valor em uma fórmula e ver como isso afeta o que acontece na nova tela.For example, a user can change the value of a slider on one screen, navigate to a different screen that uses that value in a formula, and see how it affects what happens in the new screen. O usuário pode navegar de volta para a tela original e ver que o controle deslizante manteve seu valor.The user can then navigate back to the original screen and see that the slider has retained its value.

Variáveis de contexto também são preservadas quando um usuário navega entre telas.Context variables are also preserved when a user navigates between screens. Você pode usar Navegar para definir uma ou mais variáveis de contexto para a tela que a fórmula exibirá, que é a única maneira de definir uma variável de contexto de fora da tela.You can use Navigate to set one or more context variables for the screen that the formula will display, which is the only way to set a context variable from outside the screen. Você pode usar essa abordagem para passar parâmetros para uma tela.You can use this approach to pass parameters to a screen. Se você já usou outra ferramenta de programação, essa abordagem é semelhante a passar parâmetros para procedimentos.If you've used another programming tool, this approach is similar to passing parameters to procedures.

DescriçãoDescription

BackBack

A função Back exibe a tela exibida mais recentemente.The Back function displays the screen that was most recently displayed. Você não especifica nenhum argumento para essa função.You don't specify any arguments for this function.

No primeiro argumento, especifique o nome da tela a ser exibida.In the first argument, specify the name of the screen to display.

No segundo argumento, especifique como a tela antiga muda para a nova tela:In the second argument, specify how the old screen changes to the new screen:

Argumento de transiçãoTransition Argument DescriçãoDescription
ScreenTransition.CoverScreenTransition.Cover A nova tela entra na exibição, cobrindo a tela atual.The new screen slides into view, covering the current screen.
ScreenTransition.FadeScreenTransition.Fade A tela antiga desaparece para revelar a nova tela.The old screen fades away to reveal the new screen.
ScreenTransition.NoneScreenTransition.None A tela antiga é substituída rapidamente pela nova tela.The old screen is quickly replaced with the new screen.
ScreenTransition.UnCoverScreenTransition.UnCover A tela antiga desliza para fora da exibição, descobrindo a nova tela.The old screen slides out of view, uncovering the new screen.

Você pode usar Navegar para criar ou atualizar variáveis de contexto da nova tela.You can use Navigate to create or update context variables of the new screen. Como um terceiro argumento opcional, passe um registro que contém o nome de variável de contexto como um nome de coluna e o novo valor para a variável de contexto.As an optional third argument, pass a record that contains the context-variable name as a column name and the new value for the context variable. Esse registro é o mesmo que o registro que você usa com a função AtualizarContexto.This record is the same as the record that you use with the UpdateContext function.

Defina a propriedade OnHidden da tela anterior, a propriedade OnVisible da nova tela ou ambas para fazer alterações adicionais durante a transição.Set the OnHidden property of the old screen, the OnVisible property of the new screen, or both to make additional changes during the transition. A propriedade App.ActiveScreen será atualizada para refletir a alteração.The App.ActiveScreen property will be updated to reflect the change.

Voltar normalmente retorna true, mas retornará false se o usuário estiver na primeira tela exibida e não houver nenhuma tela anterior.Back normally returns true but returns false if the user is on the first screen shown and there is no previous screen. Navegar normalmente retorna true, mas retornará false se houver um problema com um de seus argumentos.Navigate normally returns true but returns false if there is a problem with one of its arguments.

Você pode usar essas funções somente em uma fórmula de comportamento.You can use these functions only within a behavior formula.

SintaxeSyntax

Back()Back()

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

  • Tela – Obrigatório.Screen - Required. A tela a ser exibida.The screen to display.
  • Transição – Obrigatória.Transition - Required. A transição visual a ser usada entre a tela atual e a próxima tela.The visual transition to use between the current screen and the next screen. Consulte a lista de valores válidos para esse argumento anteriormente neste tópico.See the list of valid values for this argument earlier in this topic.
  • UpdateContextRecord – Opcional.UpdateContextRecord - Optional. Um registro que contém o nome de, pelo menos, uma coluna e um valor para cada coluna.A record that contains the name of at least one column and a value for each column. Esse registro atualiza as variáveis de contexto da nova tela como se passadas para a função AtualizarContexto.This record updates the context variables of the new screen as if passed to the UpdateContext function.

ExemplosExamples

FórmulaFormula DescriçãoDescription ResultadoResult
Navigate( Details, ScreenTransition.None )Navigate( Details, ScreenTransition.None ) Exibe a tela Detalhes sem transição ou alteração no valor para uma variável de contexto.Displays the Details screen with no transition or change in value for a context variable. A tela Detalhes é exibida rapidamente.The Details screen appears quickly.
Navigate( Details, ScreenTransition.Fade )Navigate( Details, ScreenTransition.Fade ) Exibe a tela Detalhes com uma transição Fade.Displays the Details screen with a Fade transition. Nenhum valor de uma variável de contexto é alterado.No value of a context variable is changed. A tela atual esmaece imediatamente para exibir a tela Detalhes.The current screen fades away to show the Details screen.
Navigate( Details, ScreenTransition.Fade, { ID: 12 } )Navigate( Details, ScreenTransition.Fade, { ID: 12 } ) Exibe a tela Detalhes com uma transição Apagar e atualiza o valor da variável de contexto ID para 12.Displays the Details screen with a Fade transition, and updates the value of the ID context variable to 12. A tela atual esmaece imediatamente para exibir a tela Detalhes e a ID da variável de contexto nessa tela é definida como 12.The current screen fades away to show the Details screen, and the context variable ID on that screen is set to 12.
Navigate( Details, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } )Navigate( Details, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } ) Exibe a tela Detalhes com uma transição Fade.Displays the Details screen with a Fade transition. Atualiza o valor da variável de contexto ID para 12 e atualiza o valor da variável de contexto Apagar para Color.Red.Updates the value of the ID context variable to 12, and updates the value of the Shade context variable to Color.Red. A tela atual esmaece imediatamente para exibir a tela Detalhes.The current screen fades away to show the Details screen. A ID da variável de contexto na tela Detalhes está definida como 12 e a variável de contexto Apagar está definida como Color.Red.The context variable ID on the Details screen is set to 12, and the context variable Shade is set to Color.Red. Se você definir a propriedade Preencher de um controle na tela Detalhes como Sombreamento, esse controle será exibido em vermelho.If you set the Fill property of a control on the Details screen to Shade, that control would display as red.

Passo a passoStep-by-step

  1. Nomeie a tela padrão como DefaultScreen, adicione um rótulo a ela e defina a propriedade de Texto desse rótulo para que ela exiba Default.Name the default screen DefaultScreen, add a label to it, and set the Text property of that label so that it shows Default.
  2. Adicione uma tela e nomeie-a como AddlScreen.Add a screen, and name it AddlScreen.
  3. Adicione um rótulo a AddlScreen e defina a propriedade de Texto do rótulo para que ela exiba Addl.Add a label to AddlScreen, and set the Text property of the label so that it shows Addl.
  4. Adicione um botão a AddlScreen e defina sua propriedade OnSelect como essa função:Add a button to AddlScreen, and set its OnSelect property to this function:
    Navigate(DefaultScreen, ScreenTransition.Fade)Navigate(DefaultScreen, ScreenTransition.Fade)
  5. Em AddlScreen, pressione F5 e, em seguida, selecione o botão.From the AddlScreen, press F5, and then select the button.
    DefaultScreen é exibida.DefaultScreen appears.

Outro exemploAnother example