Funktionen „Back“ und „Navigate“
Ändern, welcher Bildschirm angezeigt wird
Überblick
Die meisten Apps umfassen mehrere Bildschirme. Verwenden Sie die Funktionen Back und Navigate, um zu ändern, welcher Bildschirm angezeigt wird. Legen Sie z.B. die OnSelect-Eigenschaft einer Schaltfläche auf eine Formel fest, die eine Navigate-Funktion enthält, wenn Sie einen anderen Bildschirm anzeigen möchten, wenn ein Benutzer diese Schaltfläche auswählt. In dieser Formel können Sie einen visuellen Übergang, wie z.B. Fade angeben, um zu steuern, wie ein Bildschirm zu einem anderen Bildschirm wechselt.
Mit Zurück und Navigieren können Sie nur ändern, welcher Bildschirm angezeigt wird. Bildschirme, die momentan nicht angezeigt werden, werden weiterhin im Hintergrund ausgeführt. Sie können Formeln erstellen, die sich auf Eigenschaften von Steuerelementen auf anderen Bildschirmen beziehen. Beispielsweise kann ein Benutzer den Wert des Schiebereglers auf einem Bildschirm ändern, zu einem anderen Bildschirm navigieren, der diesen Wert in einer Formel verwendet, und bestimmen, wie sich dies darauf auswirkt, was auf dem neuen Bildschirm geschieht. Der Benutzer kann dann wieder zum ursprünglichen Bildschirm zurück navigieren und bestätigen, dass der Wert des Schiebereglers beibehalten wurde.
Kontextvariablen bleiben auch erhalten, wenn ein Benutzer zwischen Bildschirmen navigiert. Sie können Navigate verwenden, um eine oder mehrere Kontextvariablen für den Bildschirm festzulegen, den die Formel anzeigen wird. Dies ist die einzige Möglichkeit, von außerhalb des Bildschirms eine Kontextvariable festzulegen. Sie können diesen Ansatz verwenden, um Parameter an einen Bildschirm zu übergeben. Wenn Sie ein anderes Programmiertool verwendet haben, ähnelt diese Vorgehensweise der Übergabe von Parametern an Prozeduren.
Verwenden Sie die Eigenschaft StartScreen des App-Objekts, um das Steuerelement für den ersten anzuzeigenden Bildschirm festzulegen.
Sie können beide Funktionen nur in einer Verhaltensformel verwenden.
Navigieren
Gilt für: Canvas-Apps Modellgesteuerte Apps
Geben Sie im ersten Argument den Namen des Bildschirms an, der angezeigt werden soll.
Geben Sie im zweiten Argument an, wie der alte Bildschirm auf den neuen Bildschirm wechselt:
„Transition“-Argument | Beschreibung | Demonstration |
---|---|---|
Bildschirmübergang.Cover | Der neue Bildschirm gleitet von rechts nach links in die Ansicht und bedeckt dabei den aktuellen Bildschirm. | |
ScreenTransition.CoverRight | Der neue Bildschirm gleitet von links nach rechts in die Ansicht und bedeckt dabei den aktuellen Bildschirm. | |
Bildschirmübergang.Ausblenden | Der aktuelle Bildschirm wird ausgeblendet, um den neuen Bildschirm anzuzeigen. | |
ScreenTransition.None (Standard) | Der neue Bildschirm ersetzt schnell den aktuellen Bildschirm. | |
Bildschirmübergang.Aufdecken | Der aktuelle Bildschirm gleitet von links nach rechts aus der Ansicht und gibt dabei den neuen Bildschirm frei. | |
ScreenTransition.UnCoverRight | Der aktuelle Bildschirm gleitet von links nach rechts aus der Ansicht und gibt dabei den neuen Bildschirm frei. |
Sie können Navigate verwenden, um Kontextvariablen des neuen Bildschirms zu erstellen oder zu aktualisieren. Als optionales drittes Argument übergeben Sie einen Datensatz, der den Kontextvariablennamen als Spaltennamen sowie den neuen Wert für die Kontextvariable enthält. Dieser Datensatz ist identisch mit dem Datensatz, den Sie mit der UpdateContext-Funktion verwenden.
Legen Sie die OnHidden-Eigenschaft des alten Bildschirms, die OnVisible-Eigenschaft des neuen Bildschirms oder beide fest, um während des Übergangs zusätzliche Änderungen vorzunehmen. Die App.ActiveScreen-Eigenschaft wird aktualisiert, um die Änderung zu übernehmen.
Navigate gibt normalerweise true zurück, gibt jedoch false zurück, wenn ein Fehler auftritt.
Kontextvariablen für die Navigation werden im Artikel Wechseln zwischen Bildschirmen erläutert.
Back
Gilt für: Canvas-Apps
Die Funktion Back kehrt zum Bildschirm zurück, der zuletzt angezeigt wurde.
Für jedes Aufrufen von Navigate, verfolgt die App den angezeigten Bildschirm und den Übergang. Sie können sukzessive Zurück-Aufrufe verwenden, um bis zum Bildschirm zurückzukehren, der beim Starten der App durch den Benutzer angezeigt wurde.
Wenn die Back-Funktion ausgeführt wird, wird standardmäßig der inverse Übergang verwendet. Zum Beispiel, wenn ein Bildschirm durch den CoverRight-Übergang angezeigt wird, verwendet Zurück UnCover (also nach links), um zurückzukehren. Fade und None sind ihre eigenen Inversen. Übergeben Sie ein optionales Argument an Zurück, um einen bestimmten Übergang zu erzwingen.
Zurück gibt normalerweise true zurück, gibt jedoch false zurück, wenn der Benutzer seit dem Starten der App nicht zu einem anderen Bildschirm navigiert ist.
Syntax
Zurück( [ Übergang ] )
- Übergang – Optional. Der visuelle Übergang, der zwischen dem aktuellen und dem vorherigen Bildschirm verwendet werden soll. Weitere Informationen finden Sie in der Liste der gültigen Werte für dieses Argument weiter oben in diesem Artikel. Standardmäßig ist der Übergang, über den ein Bildschirm zurückkehrt, die Umkehrung des Übergangs, über den er angezeigt wurde.
Navigieren( Bildschirm [, Übergang [, UpdateContextRecord ] ] )
- Bildschirm – Erforderlich. Der anzuzeigende Bildschirm. Anstelle von Bildschirm können Sie auch ein Steuerelement verwenden, das sich auf dem Bildschirm befindet, zu dem Sie navigieren möchten.
- Übergang – Optional. Der visuelle Übergang, der zwischen dem aktuellen und dem nächsten Bildschirm verwendet werden soll. Weitere Informationen finden Sie in der Liste der gültigen Werte für dieses Argument weiter oben in diesem Artikel. Der Standardwert ist None.
- UpdateContextRecord – Optional. Ein Datensatz, der den Namen von mindestens einer Spalte und einen Wert für jede Spalte enthält. Dieser Datensatz aktualisiert die Kontextvariablen des neuen Bildschirms wie bei der Übergabe an die UpdateContext-Funktion.
Beispiele
Formel | Beschreibung | Ergebnis |
---|---|---|
Navigieren (Details) | Zeigt den Bildschirm Details ohne Übergang und ohne Änderung des Werts einer Kontextvariablen an. | Der Bildschirm Details wird schnell angezeigt. |
Navigieren(Details, ScreenTransition.Fade) | Zeigt den Bildschirm Details mit einem Fade-Übergang an. Kein Wert einer Kontextvariablen wird geändert. | Der aktuelle Bildschirm wird ausgeblendet, um den Bildschirm Details anzuzeigen. |
Navigieren (Details, ScreenTransition.Fade, { ID: 12 } ) | Zeigt den Bildschirm Details mit einem Fade-Übergang an und aktualisiert den Wert der Kontextvariablen ID auf 12. | Der aktuelle Bildschirm wird ausgeblendet, um den Bildschirm Details anzuzeigen, und die Kontextvariable ID des Bildschirms wird auf 12 festgelegt. |
Navigieren (Details, ScreenTransition.Fade, { ID: 12, Farbton: Farbe.Rot } ) | Zeigt den Bildschirm Details mit einem Fade-Übergang an. Aktualisiert den Wert der Kontextvariable ID auf 12 und aktualisiert den Wert der Kontextvariable Shade auf Color.Red. | Der aktuelle Bildschirm wird ausgeblendet, um den Bildschirm Details anzuzeigen. Die Kontextvariable ID auf dem Detailbildschirm wird auf 12 festgelegt, und die Kontextvariable Shade wird auf Color.Red festgelegt. Wenn Sie die Fill-Eigenschaft eines Steuerelements auf dem Detailbildschirm auf Shade festlegen, würde dieses Steuerelement rot angezeigt werden. |
Zurück() | Zeigt den vorherigen Bildschirm mit dem Standardrückgabeübergang an. | Zeigt den vorherigen Bildschirm durch den umgekehrten Übergang des Übergangs an, durch den der aktuelle Bildschirm angezeigt wird. |
Zurück( ScreenTransition.Cover ) | Zeigt den vorherigen Bildschirm mit dem Cover-Übergang an. | Zeigt den vorherigen Bildschirm durch den Cover-Übergang an, unabhängig vom Übergang, durch den der aktuelle Bildschirm angezeigt wird. |
Schritt für Schritt
Erstellen Sie eine leere App.
Fügen Sie einen zweiten Bildschirm hinzu.
Die App enthält zwei leere Bildschirme: Screen1 und Screen2.
Legen Sie die Fill-Eigenschaft von Screen2 auf den Wert
Gray
fest.Fügen Sie auf Screen2eine Schaltfläche hinzu, und legen Sie ihre Eigenschaft OnSelect auf diese Formel fest:
Navigate( Screen1, ScreenTransition.Cover )
Halten Sie die Alt-TASTE gedrückt, und wählen Sie die Schaltfläche aus.
Screen1 wird mit einem weißen Hintergrund durch einen Übergang angezeigt, der nach links reicht.
Fügen Sie auf Screen1 eine Schaltfläche hinzu, und legen Sie ihre Eigenschaft OnSelect auf diese Formel fest:
Back()
Halten Sie die Alt-TASTE gedrückt, und wählen Sie die Schaltfläche aus.
Der zweite Bildschirm wird mit einem grauen Hintergrund durch einen Übergang angezeigt, der nach rechts zeigt (die Umkehrung von Cover).
Wählen Sie die Schaltfläche auf jedem Bildschirm wiederholt, um hin- und herzuspringen.