【发布时间】:2019-08-09 22:42:40
【问题描述】:
我正在调用一个返回一行的类(Titletext),当它在我的模拟器中工作时,编辑器给了我一个警告,所以我试图找出正确的方法来处理这个问题,因为编辑器正在显示一个警告。
我尝试使用无状态小部件,但它应该接受值因此无法正常工作,我也尝试过 google 和 here,虽然有大量关于“此类(或此类类继承自)被标记为“@immutable””它并不能真正帮助我理解为什么我正在做的事情是不正确的。当我添加 final 关键字时,我的构造函数会生气,因为我的变量应该是 final 的。
import 'package:flutter/material.dart';
import './header.dart';
import './title.dart';
class NotificationsScreen extends StatefulWidget {
createState() {
return NotificationsScreenState();
}
}
class NotificationsScreenState extends State<NotificationsScreen> {
String searchString = '';
Widget header = new Header();
Widget title = new TitleText(Icons.notifications, 'Notifications');
//team logo centered
//List of notifications
Widget build(context) {
return Container(
margin: EdgeInsets.all(20.0),
alignment: Alignment.center,
child: Column(
children: [
header,
Container(margin: EdgeInsets.only(top: 25.0)),
title,
],
),
);
}
}
import 'package:flutter/material.dart';
class TitleText extends StatefulWidget {
IconData icon = IconData(0);
String title = '';
TitleText(this.icon, this.title);
@override
_TitleState createState() => _TitleState();
}
class _TitleState extends State<TitleText> {
@override
Widget build(context) {
return Container(
width: double.infinity,
child: Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Icon(widget.icon, size: 30),
Text(widget.title),
],
),
);
}
}
输出按预期工作,但警告我显然处理了这个错误,我正在寻找我应该将值传递给像这样返回小部件的类的方式。
【问题讨论】: