Flutter 如何在省道(颤振)中为符号创建切换
[在此处输入图像描述][1]我正在尝试创建一个屏幕测试应用程序,可以显示屏幕的哪些部分对触摸不响应。 这应该是一个非常简单的单屏幕应用程序,带有一个符号表,可以单击该表来测试屏幕 我的符号表工作正常,但找不到如何在单击时切换符号。 如何使每个图标都有自己的切换,而不构建近100个单独的变量(或数组)。 图标可以有属性吗 在尝试使用onTap时,我遇到了以下错误(我从颤振演示应用程序中获得了onTap,但在这种情况下无法正常工作。) 编译器消息: lib/main.dart:33:32:错误:在此之前应为']'。 onTap:(){ ^ lib/main.dart:33:27:错误:未为类“\u MyAppState”定义获取程序“onTap” “_MyAppState”来自“package:app1/main.dart”(“lib/main.dart”)。 尝试将名称更正为现有getter的名称,或定义名为“onTap”的getter或字段。 onTap:(){ ^^^^^Flutter 如何在省道(颤振)中为符号创建切换,flutter,dart,flutter-layout,Flutter,Dart,Flutter Layout,[在此处输入图像描述][1]我正在尝试创建一个屏幕测试应用程序,可以显示屏幕的哪些部分对触摸不响应。 这应该是一个非常简单的单屏幕应用程序,带有一个符号表,可以单击该表来测试屏幕 我的符号表工作正常,但找不到如何在单击时切换符号。 如何使每个图标都有自己的切换,而不构建近100个单独的变量(或数组)。 图标可以有属性吗 在尝试使用onTap时,我遇到了以下错误(我从颤振演示应用程序中获得了onTap,但在这种情况下无法正常工作。) 编译器消息: lib/main.dart:33:32:错误:在此
void main(){
runApp(MyApp());
}
类MyApp扩展了StatefulWidget{
@凌驾
_MyAppState createState()=>\u MyAppState();
}
类MyAppState扩展了状态{
双iconSize=40;
@凌驾
小部件构建(构建上下文){
var-toggledOn=false;
返回材料PP(
家:脚手架(
appBar:appBar(
标题:文本(“屏幕测试仪”),
),
正文:中(
子项:列(子项:[
容器(
保证金:所有(10),
孩子:桌子(
边框:TableBorder.all(),
儿童:[
TableRow(儿童:[
栏(儿童:[
图标(Icons.adjust,大小:iconSize,
颜色:toggledOn?颜色。绿色:颜色。蓝色),
onTap:(){
设置状态(){
如果(toggledOn=false){
toggledOn=true;
}否则{
toggledOn=false;
}
});
}
]),
栏(儿童:[
图标(Icons.adjust,大小:iconSize,
颜色:toggledOn?颜色。绿色:颜色。红色),
]),
栏(儿童:[
图标(Icons.adjust,大小:iconSize,
颜色:toggledOn?颜色。绿色:颜色。红色),
]),
栏(儿童:[
图标(Icons.adjust,大小:iconSize,
颜色:toggledOn?颜色。绿色:颜色。红色),
]),
栏(儿童:[
图标(Icons.adjust,大小:iconSize,
颜色:toggledOn?颜色。绿色:颜色。红色),
])
]),
TableRow(儿童:[
图标(Icons.adjust,大小:iconSize,
颜色:toggledOn?颜色。绿色:颜色。红色),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
]),
TableRow(儿童:[
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
]),
TableRow(儿童:[
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
]),
TableRow(儿童:[
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
]),
TableRow(儿童:[
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
]),
TableRow(儿童:[
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
]),
TableRow(儿童:[
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
图标(Icons.adjust,大小:iconSize,),
]),
TableRow(儿童:[
图标(Icons.adjust,
void main() {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
double iconSize = 40;
@override
Widget build(BuildContext context) {
var toggledOn = false;
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Screen Tester'),
),
body: Center(
child: Column(children: <Widget>[
Container(
margin: EdgeInsets.all(10),
child: Table(
border: TableBorder.all(),
children: [
TableRow( children: [
Column(children:[
Icon(Icons.adjust, size: iconSize,
color: toggledOn ? Colors.green : Colors.blue),
onTap: () {
setState(() {
if (toggledOn = false) {
toggledOn = true;
} else {
toggledOn = false;
}
});
}
]),
Column(children:[
Icon(Icons.adjust, size: iconSize,
color: toggledOn ? Colors.green : Colors.red),
]),
Column(children:[
Icon(Icons.adjust, size: iconSize,
color: toggledOn ? Colors.green : Colors.red),
]),
Column(children:[
Icon(Icons.adjust, size: iconSize,
color: toggledOn ? Colors.green : Colors.red),
]),
Column(children:[
Icon(Icons.adjust, size: iconSize,
color: toggledOn ? Colors.green : Colors.red),
])
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,
color: toggledOn ? Colors.green : Colors.red),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
TableRow( children: [
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
Icon(Icons.adjust, size: iconSize,),
]),
],
),
),
]))),
);
}
}```
[1]: https://i.stack.imgur.com/O019z.png