NoSuchMethodError: invalid member on nul: "_set"
NoSuchMethodError: invalid member on nul: "_set"
我是 Flutter 新手。
我正在尝试制作 Listview 文本字段的总计。
但是当在 ItemBuilder
下面插入行时
t1[index] = TextEditingController();
它抛出错误
NoSuchMethodError:nul 上的成员无效:“_set”
但当。我已经声明了列表 T1 的变量
为此目的。请解决
ListView 中的文本字段总数。
附上示例代码。
提前致谢。
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
List data = ["apple kg", "banana kg", "mango kg"];
List<TextEditingController> t1;
@override
Widget build(BuildContext context) {
return Scaffold(
body: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Container(
width: 400,
height: 300,
child: ListView.builder(
itemCount: data.length,
itemBuilder: (context, index) {
t1[index] = TextEditingController();
return Container(
width: 300,
decoration: BoxDecoration(
border: Border.all(color: Colors.blue, width: 0.5),
),
child: Column(
children: [
Text(data[index]),
TextField(),
],
),
);
},
),
),
Text("TOTAL SALE"),
],
),
);
}
}
在声明中:
List<TextEditingController> t1=[];
在 ListView.builder
中将 t1[index] = TextEditingController();
更改为
if(index<ti.length){
t1[index] = TextEditingController();
}else{
t1.add(TextEditingController());
}
原因是你声明了一个空列表,而列表中没有元素,你尝试将TextEditingController设置为null。
我是 Flutter 新手。 我正在尝试制作 Listview 文本字段的总计。 但是当在 ItemBuilder
下面插入行时t1[index] = TextEditingController();
它抛出错误 NoSuchMethodError:nul 上的成员无效:“_set” 但当。我已经声明了列表 T1 的变量 为此目的。请解决 ListView 中的文本字段总数。
附上示例代码。 提前致谢。
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
List data = ["apple kg", "banana kg", "mango kg"];
List<TextEditingController> t1;
@override
Widget build(BuildContext context) {
return Scaffold(
body: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Container(
width: 400,
height: 300,
child: ListView.builder(
itemCount: data.length,
itemBuilder: (context, index) {
t1[index] = TextEditingController();
return Container(
width: 300,
decoration: BoxDecoration(
border: Border.all(color: Colors.blue, width: 0.5),
),
child: Column(
children: [
Text(data[index]),
TextField(),
],
),
);
},
),
),
Text("TOTAL SALE"),
],
),
);
}
}
在声明中:
List<TextEditingController> t1=[];
在 ListView.builder
中将 t1[index] = TextEditingController();
更改为
if(index<ti.length){
t1[index] = TextEditingController();
}else{
t1.add(TextEditingController());
}
原因是你声明了一个空列表,而列表中没有元素,你尝试将TextEditingController设置为null。