Flutter 颤振设置状态未刷新UI
我在一个类中构建了多个表单页面,我创建了4个小部件,每个小部件代表一个带有文本字段、卡片或单选按钮的页面。 我还创建了一个方法,在需要时在页面之间切换。我按下一步。 这是意料之中的事^^ 除非按ctrl+S,否则不会刷新第一页中的问题UI,, 在表单的第一页中,我创建了自定义单选按钮,它们只是卡片 当点击任何一张卡片时,都会有一个设置状态的方法,通过改变其样式来突出显示所选卡片 这很好用!在开始的时候,当我作为一个孩子在脚手架里直接调用第一页1 但是,在我创建了在页面之间切换的方法之后。。第1页中的UI不刷新 我要放张照片 我试过很多方法!但是它不起作用。。 我想做的对吗?我是颤振的初学者 &我有一个项目要提交:(Flutter 颤振设置状态未刷新UI,flutter,dart,Flutter,Dart,我在一个类中构建了多个表单页面,我创建了4个小部件,每个小部件代表一个带有文本字段、卡片或单选按钮的页面。 我还创建了一个方法,在需要时在页面之间切换。我按下一步。 这是意料之中的事^^ 除非按ctrl+S,否则不会刷新第一页中的问题UI,, 在表单的第一页中,我创建了自定义单选按钮,它们只是卡片 当点击任何一张卡片时,都会有一个设置状态的方法,通过改变其样式来突出显示所选卡片 这很好用!在开始的时候,当我作为一个孩子在脚手架里直接调用第一页1 但是,在我创建了在页面之间切换的方法之后。。第1页
我在google中找不到解决方案,试着制作小部件
StatefulWidget
,当你点击卡片时,在小部件内部调用setState((){})
。下面是我所做的^^
因为问题就在第1页,所以我在脚手架中添加了第1页,作为它的子级,而没有切换页面方法
然后在page1中,一个按钮将导航到另一个类,
第二个类的scaffold和app bar与前一页完全相同。但是,在它的子类中,我添加了calledWidget
,在我的例子中,它在2到4页之间切换^^
简而言之,我把第1页放在一个单独的页面中,其余的页面放在一个单独的类中的switch方法中
它可以工作,但我希望在保存值和集成API以发布值时不会发现任何困难
你怎么想?只是一个猜测-尝试将
setState((){});
放在switchPage()
方法的末尾,并将其从newNumber==1
if块中删除?@MSpeed我尝试从setState((){});
从newNumber==1
块中删除,但将其保留在其他块中。仍然不起作用:(Aww,但是StatefulWidget
可以添加到类中。我拥有的页面只是Widget类型的方法,返回一个容器或列,其中包含所有其他小部件或setState((){})
statefulWidget
也是一个可以返回其他窗口小部件的窗口小部件,但唯一不同的是,您可以在其中设置窗口小部件的状态,我们通常不使用窗口小部件的方法,除非在显示窗口小部件之前需要检查条件,但通常我们使用statefulWidgets
和无状态窗口小部件代码>AWW!谢谢!我很高兴!如果它帮助了你,请考虑点击绿色的复选标记来标明它是正确的。祝你有个美好的一天: