Power Apps の Back 関数にオプションを指定しなかった時の挙動
2022.02.16
Power Apps で「ひとつ前の画面に戻る」処理に利用する「Back 関数」ですが、少し面白い挙動があります。
Back 関数は「戻る」動作をさせるオブジェクト(ボタンやラベル、アイコン など)の OnSelect プロパティに設定し、その際、どのような画面効果を発生させるかをオプションで指定します。ただ、指定を省略した場合には Back と対になる Navigate に指定した画面効果が逆転して実行される仕様になっています。
例えば、遷移元となる画面でアイテム選択時の OnSelect プロパティに Navigate(DetailScreen1,ScreenTransition.Cover) を設定して
「右から左へのスライドイン」を実装した場合、遷移した先画面のボタン等から Back (オプション省略)すると、実行時には Cover の逆である CoverRight が発動するわけです。
表で整理すると下図のようになります。Fade と None については「逆」がありませんので、そのままです。各オプションが実際にどのように表示されるかについては、公式の Docs が分かりやすいです(Power Apps の Back および Navigate 関数)。
一般的には「オプションを指定しなければ何も効果適用されない」と考えると思うのですが、Back 関数については「指定しないと効果が適用される」仕組みです。正直、私も最初はバグ?指定ミス?かと焦りました。
簡単に試すことができるので、皆さんも是非、私のお驚きを体感してください(笑)