我的顫振應用程式中有一個加載螢屏,當加載布林值為真時,它使用三元運算子顯示。當此螢屏顯示時,用戶只需滑動即可關閉它(在 iOS 上),我想他們可以使用 Android 上的后退按鈕來達到相同的效果。
最好的做法是什么讓用戶不能讓加載螢屏顫抖?
uj5u.com熱心網友回復:
你可以使用 Flutter 提供的 WillPopScope 小部件。
正如檔案在這里所說,WillPopScope:
創建一個小部件,該小部件注冊回呼以否決用戶嘗試解除封閉的嘗試
它基本上創建了一個可以防止用戶回傳到另一個螢屏的小部件,用戶仍然可以使用主頁按鈕并關閉應用程式,但至少可以防止回傳。
示例代碼:
import 'package:flutter/material.dart';
class ExamplePop extends StatefulWidget {
const ExamplePop({Key? key}) : super(key: key);
@override
State<ExamplePop> createState() => _ExamplePopState();
}
class _ExamplePopState extends State<ExamplePop> {
bool canPop = false;
@override
Widget build(BuildContext context) {
return WillPopScope(
onWillPop: () async {
return canPop;
},
child: Scaffold(
appBar: AppBar(
automaticallyImplyLeading: true,
),
),
);
}
}
如果 onWillPop 回傳 false 用戶不能回傳,如果回傳 true 他回傳。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/426592.html
