- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我用 flutter 编写了一个应用程序。我想更改字符串变量的状态。在我设置字符串变量的状态后,ModalRoute PopUpMenu 不显示更改的变量。如果我关闭 ModalRoute PopUpMenu 并再次打开它,我可以看到更改后的变量。
我试图弹出上下文,但我想在 PopUpMenu 上进行更改。我有自己的 Overlay 小部件。
class MyOverlay extends ModalRoute {
...
}
// this is my main.dart:
List<String> categories = ['please', 'help', 'me'];
String _selectedCategory = 'category';
// this is where the PopUpMenu starts
floatingActionButton: FloatingActionButton(
child: ...,
onPressed: () {
_showPopup(context, _popupBody(), 'Add');
},
),
_showPopup(BuildContext context, Widget widget, String title, {BuildContext popupContext}) {
Navigator.push(
context,
MyOverlay(
...
onPressed: () {
try {
Navigator.pop(context); //close the popup
} catch (e) {
print(e);
}
},
...
body: widget,
) ...
);
}
Widget _popupBody() {
...
PopupMenuButton<String>(
// HERE IS THE PROBLEM THIS SHOULD CHANGE WHEN I SELECT
child: Text('$_selectedCategory'),
itemBuilder: (BuildContext context) {
return categories.map((String choice) {
return PopupMenuItem<String>(
value: choice,
child: Text(choice),
);
}).toList();
},
onSelected: _selectCategory,
),
...
}
void _selectCategory(String category) {
setState(() => this._selectedCategory = category);
}
如果我选择 PopupMenuItem,文本小部件不会更改。
最佳答案
我有同样的问题,我暂时使用 changedExternalState () 修复;强制重建,但我认为这可能不是最佳选择。
例子:
CheckboxListTile(
value: _checkboxValue,
title: Text(phone),
onChanged: (value){
_checkboxValue = value;
//Fix
changedExternalState();
},
)
关于text - 如何在 ModalRoute 上设置状态()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57038462/
为了在 flutter 中获得类似模态的效果(当页面被推到当前页面的顶部时,背景为黑色并且足够透明,以便您可以在背景中看到后面的页面)。 我正在使用 ModalRoute 类在我当前页面的顶部显示一个
每次我调用 modalroute 以从命名路由中检索参数时,我都会得到 null。 这是代码片段: Navigator.pushNamed( context,
我用 flutter 编写了一个应用程序。我想更改字符串变量的状态。在我设置字符串变量的状态后,ModalRoute PopUpMenu 不显示更改的变量。如果我关闭 ModalRoute PopUp
在下面实现的代码中,我可以在页面底部显示带有 Fade 动画的对话框,现在,我想将 SlideTransition 添加到 ModalRoute这个实现从底部滑动对话框,但我不能那样做 例如,我想要的
当我将我的应用程序打开到登录屏幕时,屏幕工作正常但没有发生任何事情,现在,当我单击注册按钮并尝试单击返回登录时,出现此错误 ======== Exception caught by widge
我对 flutter 感到困惑,当我想从 statefulwidget (initstate) 读取参数并将其访问到小部件构建中时,该变量仍然为空。如何正确阅读?我的代码如下: import 'pac
在任何给定情况下是否有任何理由使用一个而不是另一个?我试图弄清楚为什么有两种方法可以做到这一点。我指的是“带参数导航”食谱食谱: https://flutter.dev/docs/cookbook/n
最近我正在迁移到空安全。更新了 firebase_analytics:^8.0.2。 现在面临 this.observer.subscribe(this, ModalRoute.of(context)
在我的应用程序中单击一个按钮会打开一个弹出窗口。单击该按钮一次,然后它工作正常,但是每当我连续单击该按钮 2 3 次时,就会出现下面给出的错误。 我收到此错误。 flutter: ══════════
我正在使用 Getx 状态管理。我有一个登录屏幕及其 GetxController。在那个 GetxController 中,我定义了一个像这样的 FormKey final formKey = Gl
我是一名优秀的程序员,十分优秀!