我正在用Flutter制作一个应用程序,我正在使用Android studio来做这个。但是它不是通过使用alt+insert命令来生成getter和setter automatically.is来生成getter和setter,有什么方法可以做到这一点吗?
发布于 2019-02-24 20:22:00
在Dart中你不需要这样做。
一个字段相当于一个getter/setter对。最后一个字段相当于一个getter。
如果另外需要逻辑,则只需将其更改为实际的getters/setter,并且此更改对于该类的用户是非破坏性的。
私有字段的公共getter/setter方法在Dart中是反模式的,如果getter/setter方法不包含额外的逻辑。
class Foo {
String bar; // normal field (getter/setter)
final String baz; // read-only (getter)
int _weight;
set weight(int value) {
assert(weight >= 0);
_weight = value;
}
int get weight => _weight
}
发布于 2019-05-16 06:27:37
我没有清楚地理解你的问题,但请检查这是否有帮助。
String _myValue = "Hello World";
现在,在mac中按Comman+N,然后选择Getter和Setter。
现在您可以看到为您生成的Getter和Setter。
String _myValue = "Hello World";
String get myValue => _myValue;
set myValue(String value) {
_myValue = value;
}
确保使用"_“作为私有变量的前缀。
要了解dart中的getter和setter,请关注this youtube视频。
编辑:
注意到我的答案获得了更高的票数,我有责任在这里澄清一些事情。正如Günter Zöchbauer正确提到的那样,Dart不需要显式的getter/setter声明。
发布于 2021-09-30 22:50:59
在Android直播间:
https://stackoverflow.com/questions/54854046
复制相似问题