如何修改CustomToast类,实现直接通过类调用buildWidget方法?
改造CustomToast类以支持静态调用方式
要实现CustomToast.buildWidget('Toast1')这种类直接调用的方式,只需要把buildWidget改成静态方法,不需要依赖类的实例,直接接收title参数即可。
改造后的代码如下:
class CustomToast { // 静态方法,直接通过类名调用 static Future buildWidget(String title) async { return Fluttertoast.showToast( msg: title, toastLength: Toast.LENGTH_SHORT, gravity: ToastGravity.BOTTOM, timeInSecForIosWeb: 1, backgroundColor: Colors.black.withOpacity(0.7), textColor: Colors.white, fontSize: 16.0, ); } }
改动说明
- 移除了原来的构造函数和实例变量
title,因为静态方法不需要依赖类实例 - 给
buildWidget添加static关键字,使其成为类的静态方法 - 将
title作为静态方法的参数传入,替代原来的实例变量
现在直接通过CustomToast.buildWidget('Toast1')就能调用,不需要先实例化类。
内容的提问来源于stack exchange,提问作者Kartik
相关产品推荐
相关产品推荐

