[英]how to show SnackBar in flutter?
I want to show SnackBar if not internet connection is available what to do?如果没有可用的互联网连接,我想显示 SnackBar 怎么办? I want to use snackbar in else how to do it?
我想在其他地方使用小吃店怎么办?
Future<void> checkStatus(ConnectivityResult result) async
{
{
if(result == ConnectivityResult.mobile || result == ConnectivityResult.wifi)
{
changeValues("Connected");
}
else
{
Show SnackBar Here
}
}
This is one way to show a SnackBar
using the GlobalKey
.这是使用
GlobalKey
显示SnackBar
的一种方式。
First we need to define a GlobalKey variable => final GlobalKey _scaffoldKey首先我们需要定义一个 GlobalKey 变量 => final GlobalKey _scaffoldKey
Then use it as key in the Scaffold => key: _scaffoldKey然后将其用作 Scaffold => 键中的键:_scaffoldKey
After that, you can use it from your own method => _scaffoldKey.currentState.showSnackBar之后,您可以从自己的方法中使用它 => _scaffoldKey.currentState.showSnackBar
Full code:完整代码:
import 'package:flutter/material.dart';
class YourClass extends StatefulWidget {
const YourClass({Key key}) : super(key: key);
@override
_YourClassState createState() => _YourClassState();
}
class _YourClassState extends State<YourClass> {
final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();
void showSnackBar(String text) {
_scaffoldKey.currentState.showSnackBar(SnackBar(content: Text(text)));
}
@override
Widget build(BuildContext context) {
return Scaffold(
key: _scaffoldKey,
body: RaisedButton(
onPressed: () {
showSnackBar("Your Custom Message");
},
child: Text("Show Snackbar")),
);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.