flutter - 未引用声明“setState”
问题描述
我想当我按下按钮时,文字会立即变成OK
出现提示 setState "The declaration 'setState' is not referenced"
class mainApp extends StatefulWidget {
@override
_State createState() => _State();
}
class _State extends State<mainApp> {
@override
Widget build(BuildContext context) {
. return Scaffold(
. . ...
. . body: pageview(),
. );
}
}
Widget pageview() {
bool BOOL = false;
return Row( children: [
FlatButton( onPressed: () { setState(){}; BOOL= true; } ,child: Text('OK') ),
Text( textFun(BOOL), ),
]);
}
String(bool BOOL) {
if(BOOL)
return 'OK';
return 'not OK';
}
解决方案
你正在做的是设置一个没有改变的状态,然后你改变你的BOOL
变量。
首先进行更改,然后再调用setState
,或者在里面更改 BOOLsetState
推荐阅读
- python - Snowflake 如何处理 NULL 值?
- android - AutoCompleteTextView 使用 MergeCursor 显示来自 SearchRecentSuggestionsProvider 的错误字符串
- javascript - 401:当我尝试在 .net 中通过 AJAX 调用方法时未授权
- react-native - 控制台日志在 React Native 中只显示一次
- react-native - 在 React Native 中翻译滚动视图中的视图
- c - Windows 上的 LibVNC 编译错误:未解析的外部符号
- node.js - 我的 Alexa Skill 在欧洲有效,但在美国无效
- http - http 304 响应与缓存控制相结合似乎不适用于 max-age
- makefile - 如果找不到文件夹,则 Makefile 中止 make
- python - 我的 sqlalchemy.InterfaceError 的原因是什么?如何使用 url_for() 访问存储为十六进制的图像(使用 PIL 枕头)?