Flutter 使用无状态小部件创建简单随机化程序时出错。实例成员可以';不能在初始值设定项中访问
我试图创建一个非常简单的生成器,其中“是”、“否”或“可能”出现在这个(无状态)水晶球中 这是我的代码:Flutter 使用无状态小部件创建简单随机化程序时出错。实例成员可以';不能在初始值设定项中访问,flutter,dart,statelesswidget,Flutter,Dart,Statelesswidget,我试图创建一个非常简单的生成器,其中“是”、“否”或“可能”出现在这个(无状态)水晶球中 这是我的代码: import 'dart:html'; import 'package:flutter/material.dart'; import 'dart:math'; void main() => runApp( MaterialApp(home: MyApp()), ); class MyApp extends StatelessWidget { @overr
import 'dart:html';
import 'package:flutter/material.dart';
import 'dart:math';
void main() => runApp(
MaterialApp(home: MyApp()),
);
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Welcome to Flutter',
home: Scaffold(
backgroundColor: Colors.white,
appBar: AppBar(
title: Text('Welcome to Flutter'),
),
body: Center(
child: Image.asset('images/blu.png'),
),
),
);
}
}
class picker extends StatefulWidget {
@override
_pickerState createState() => _pickerState();
}
class _pickerState extends State<picker> {
List yourList = ["Yes", "No", "Maybe"];
int randomIndex = Random().nextInt(yourList.length);
@override
Widget build(BuildContext context) {
return Center(
child: TextButton(
onPressed: () {
setState(() {
print(yourList[randomIndex]);
});
},
child: null,
),
);
}
}
导入'dart:html';
进口“包装:颤振/材料.省道”;
导入“dart:math”;
void main()=>runApp(
MaterialApp(主页:MyApp()),
);
类MyApp扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回材料PP(
标题:“欢迎来到弗利特”,
家:脚手架(
背景颜色:Colors.white,
appBar:appBar(
标题:文本(“欢迎光临颤振”),
),
正文:中(
子项:Image.asset('images/blu.png'),
),
),
);
}
}
类选择器扩展StatefulWidget{
@凌驾
_pickerState createState();
}
类_pickerState扩展状态{
列出你的清单=[“是”、“否”、“可能”];
int randomIndex=Random().nextInt(yourList.length);
@凌驾
小部件构建(构建上下文){
返回中心(
孩子:文本按钮(
已按下:(){
设置状态(){
打印(您的列表[随机索引]);
});
},
child:null,
),
);
}
}
但它显示此错误,不允许我热重新加载:
无法在初始值设定项中访问实例成员“yourList”。
此外,我还添加了child:null,因为该参数是必需的。您需要在
构造函数中调用yourList
,如下所示:
class _pickerState extends State<picker> {
List yourList = ["Yes", "No", "Maybe"];
int randomIndex;
_pickerState() {
randomIndex = Random().nextInt(yourList.length);
}
...
类_pickerState扩展状态{
列出你的清单=[“是”、“否”、“可能”];
int随机指数;
_pickerState(){
randomIndex=Random().nextInt(yourList.length);
}
...
如果答案有帮助,您可以向上投票:)