Flutter 保存值;局部颤振
下面的代码允许您将参数保存为各种设备中的SharedPresence,但是在代码执行过程中,我看到以下错误。 如何更正此错误 错误:Flutter 保存值;局部颤振,flutter,dart,Flutter,Dart,下面的代码允许您将参数保存为各种设备中的SharedPresence,但是在代码执行过程中,我看到以下错误。 如何更正此错误 错误: Unhandled Exception: type 'String' is not a subtype of type 'int' #0 Storage.salva (package:Myapp/utils/support.dart:17:24) <asynchronous suspension> #1 _LoginPageStat
Unhandled Exception: type 'String' is not a subtype of type 'int'
#0 Storage.salva (package:Myapp/utils/support.dart:17:24)
<asynchronous suspension>
#1 _LoginPageState._salvataggiovalorilogin (package:Myapp/ui/login_page.dart:659:15)
#2 _LoginPageState._buildSignUp.<anonymous closure> (package:Myapp/ui/login_page.dart:636:38)
#3 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:706:14)
#4 _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:789:36)
#5 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24)
#6 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:486:11)
#7 BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:264:5)
#8 BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:236:7)
#9 GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:2<…>
flutter: Letto: 0
//Dart View Code
Storage.salva("1","sample");
Storage.leggi("1");
showInSnackBar("Parametri server configurati");
//Storage Class
class Storage {
//Funzione che permette la lettura di un valore dalla memoria
static void leggi(var name) async {
final prefs = await SharedPreferences.getInstance();
final key = name;
final value = prefs.getInt(key) ?? 0;
print("Letto: $value");
}
//Funzione che permette il salvataggio di un valore in memoria
static void salva(var name, var value) async {
final prefs = await SharedPreferences.getInstance();
prefs.setInt(name, value);
print("Salvato $value");
}
}
将字符串值传递给
salva
方法。在这一行中,您将它保存为int
prefs.setInt(name, value);
你应该改用这个
prefs.setString(name, value);
在
salva
中,您正在传入一个字符串“sample”
和调用的setInt
。确保将Int作为第二个参数传递到salva
我建议在函数参数上使用类型而不是var来帮助实现这一点
//Storage Class
class Storage {
//Funzione che permette la lettura di un valore dalla memoria
static void leggi(String name) async {
final prefs = await SharedPreferences.getInstance();
final key = name;
final value = prefs.getInt(key) ?? 0;
print("Letto: $value");
}
//Funzione che permette il salvataggio di un valore in memoria
static void salva(String name, int value) async {
final prefs = await SharedPreferences.getInstance();
prefs.setInt(name, value);
print("Salvato $value");
}
}