我遇到了一个砖墙,试图更新我要显示的图像的文件路径。唯一的方法(到目前为止,我所看到的)是使用静态方法将路径作为字符串传递,但是其图像路径已存储,如果您要更改它,可以在以后更改。这是我到目前为止所拥有的
File _bkimageFile = new File(look);
static var look = '/storage/emulated/0/WhatsApp/Media/WhatsApp Images/IMG-
20190320-WA0009.jpg';
如果我尝试通过小部件传递值,则会显示错误消息
Only static members can be accessed in
initializers.dart(implicit_this_reference_in_initializer)
The type of 'look' can't be inferred because it refers to an instance
method, '_read', which has an implicit type.
Add an explicit type for either 'look' or
'_read'.dart(strong_mode_top_level_instance_method)
我知道静态方法是在运行时首先构建的,但是我不确定我在做什么错。万一您想知道“ _read”是一个小部件,它看起来像这样。
_read() async {
final prefs = await SharedPreferences.getInstance();
final key = 'foo';
final value = prefs.getString(key) ?? 0;
print('read: $value');
}
我知道该值存在,因为我在另一个屏幕上使用了该小部件,它会按原样返回值。
答案 0 :(得分:0)
我能够通过将值通过var传递到
来解决此问题FileImage(new File(_bar)),
_bar(
////some code
return foo
)