Flutter:如何在我的 Style 类中创建构造函数? [复制]
Posted
技术标签:
【中文标题】Flutter:如何在我的 Style 类中创建构造函数? [复制]【英文标题】:Flutter : How to create constructor in my Style class? [duplicate] 【发布时间】:2021-07-11 23:39:38 【问题描述】:我在 Flutter 项目中创建了一个 Style 类。所以我将使用这个 Style 类来调用我想要插入到 main.dart 中的 TextStyle。我还在 Style 类中创建了一个构造函数来获取 Style 类调用时的颜色。我想用 Style(Colors.black).header
调用 main.dart 中的 Style 类。但是在我尝试创建构造函数时出现错误:
我需要你的帮助来解决这个错误,非常感谢你:)
【问题讨论】:
class Style Color styleColor; Style(this.styleColor); final TextStyle header = TextStyle( color: Colors.white, fontSize: 24, fontFamily: "Poppins", fontWeight: FontWeight.w700, );
【参考方案1】:
您不能从另一个实例的初始化程序访问其他实例成员styleColor
。为了解决这个问题,您需要以某种方式延迟 header
的初始化,这可以通过使用初始化列表或将 header
设为 getter 来完成。
使用初始化列表:
class Style
Color styleColor;
Style(this.styleColor) :
header = TextStyle(
color: styleColor,
fontSize: 24,
fontFamily: "Poppins",
fontWeight: FontWeight.w700,
),
title1 = TextStyle(
color: styleColor,
fontSize: 24,
fontFamily: "Poppins",
fontWeight: FontWeight.w700,
);
final TextStyle header;
final TextStyle title1;
使header
成为吸气剂:
class Style
Color styleColor;
Style(this.styleColor);
TextStyle get header => TextStyle(
color: styleColor,
fontSize: 24,
fontFamily: "Poppins",
fontWeight: FontWeight.w700,
);
TextStyle get title1 => TextStyle(
color: styleColor,
fontSize: 24,
fontFamily: "Poppins",
fontWeight: FontWeight.w700,
);
【讨论】:
哇,谢谢克里斯托弗!但是,我怎么能想在 Style 类中添加另一种样式。比如我想在Style类中添加title1? @BillRei 只需在初始化列表中添加另一个条目或添加一个新的 getter。我在答案中添加了示例。 哦,是的,非常感谢您的回答。我很高兴了解这个问题:)以上是关于Flutter:如何在我的 Style 类中创建构造函数? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法使用android studio在我的flutter项目中创建一个Podfile?
Flutter oAuth:如何开始使用OAuth和Stripe连接
如何使用 CBV 在我的所有 Django 模板中创建侧边栏?