如何在没有StatefulWidget的情况下使用setState?

时间:2020-03-01 18:26:52

标签: android-studio flutter dart

首先,我知道这样做并不是真的可行,但是我有一个问题,我不知道该怎么办。 我想使用DropDown,但它不会更改没有setState的文本,因此我无法将此代码转换为StatefulWidget。我该怎么办?代码并不重要,但在这里(不是整个代码):

Traceback (most recent call last):
  File "/Users/Apple/PycharmProjects/VasanthProjects/construct.py", line 24, in <module>
    print(person1.name + ' Please ' + person1.talk())
TypeError: can only concatenate str (not "NoneType") to str
Open your mouth

Process finished with exit code 1

1 个答案:

答案 0 :(得分:1)

您不能。

setState方法更新小部件的状态。根据定义,StatelessWidget没有要更新的状态。因此,如果您希望能够调用setState,则需要将小部件转换为StatefulWidget。 (但是可以,任何StatelessWidget都可以很容易地转换为StatefulWidget。)