我们如何从flutter中的静态方法获取状态值? ,我有一个叫做phone的状态,需要以某种静态方法使用这些状态值。
String phone = '';
@override
void initState() {
super.initState();
getPhoneString();
}
void getPhoneString() async
{
// basiclly just get the value from sharef pref
setState(() {
phone = 'myhpone-string';
});
}
static Future<Void> Process() async {
// get phone state value
}
答案 0 :(得分:0)
据我了解,解决方案是,当您调用initState()
页面时,“类状态”页面将存储到另一个静态值中,您的代码将是:
String phone = '';
static phone myPhoneState;
@override
void initState() {
super.initState();
getPhoneString();
***myPhoneState = this;***
}
void getPhoneString() async
{
// basiclly just get the value from sharef pref
setState(() {
phone = 'myhpone-string';
});
}
static Future<Void> Process() async {
// get phone state value
}
这样,您可以随时根据需要调用页面状态及其方法“按钮,对话框.....
答案 1 :(得分:-1)
如果要在静态方法中使用本地类变量,则有两个选择。
不建议使用第一个选项。 对于第二个选项,您可以像这样更改静态方法:
static Future<Void> Process(String param) async {
// use phone parameter
}