当我在 FLUTTER 中应用计算按钮时,如何 RETURN 选择当前下拉菜单的结果?
HOW TO RETURN RESULT FOR CURRENT DROPDOWN SELECTED WHEN I APPLY A CALCULATE BUTTON IN FLUTTER?
我想知道如何使用三个输入变量和三个与每个下拉选项相关的不同解决方案来实现这段代码。每次我选择一个选项时,它是否会阻止不属于方程式的条目和return所选项目的计算值?
var _currencies = ['A', 'B', 'C'];
DropdownButtonHideUnderline( child: DropdownButton<String>(
items: _currencies.map((String value) {
return DropdownMenuItem<String>(
value: value,
child: Text(value),
);
}).toList(),
value: _currentItemSelected,
isDense: true,
onChanged: (String newValueSelected) {
//code a executar
_onDropDownItemSelected(
newValueSelected);
},
))
String _calculateTotalReturns() {
double entry1 = double.parse(entry1Controller.text);
double entry2 = double.parse(entry2Controller.text);
double entry3 = double.parse(entry3Controller.text);
//每个下拉选项三个方程
double total1 = entry1 * entry2; //FOR DROPDOWN A
double total2 = entry1 + entry2 + entry3 //FOR DROPDOWN B
double total3 = entry1*entry2+entry3 //FOR DROPDOWN C
String result = '';
return 结果; // 当我应用计算按钮时,如何 return 选择当前下拉菜单的结果???
}
//---------------------------------------- ------------------------
child: RaisedButton(
child: Text(
'Calcular',
textScaleFactor: 1.5,
),
color: Theme.of(context).accentColor,
textColor: Theme.of(context).primaryColorDark,
onPressed: () {
setState(() {
if (_formKey.currentState.validate()) {
this.displayResult =
_calculateTotalReturns();
}
});
},
),
您将需要一个全局变量来存储用户从下拉列表中选择的值。例如,
String selectedValue; // <-- this will be a global variable.
在 onChanged
更改全局变量
onChanged: (String newValueSelected) {
selectedValue = newValueSelected;
}
然后你可以在 _calculateTotalReturns()
方法中访问这个变量并且 return 相应的正确结果就像..
String _calculateTotalReturns() {
//other code
String result;
if(selectedValue == 'A'){
result = total1.toString();
}
else if(selectedValue == 'B'){
result = total2.toString();
}
else{
result = total3.toString();
}
return result;
}
我想知道如何使用三个输入变量和三个与每个下拉选项相关的不同解决方案来实现这段代码。每次我选择一个选项时,它是否会阻止不属于方程式的条目和return所选项目的计算值?
var _currencies = ['A', 'B', 'C'];
DropdownButtonHideUnderline( child: DropdownButton<String>(
items: _currencies.map((String value) {
return DropdownMenuItem<String>(
value: value,
child: Text(value),
);
}).toList(),
value: _currentItemSelected,
isDense: true,
onChanged: (String newValueSelected) {
//code a executar
_onDropDownItemSelected(
newValueSelected);
},
))
String _calculateTotalReturns() {
double entry1 = double.parse(entry1Controller.text);
double entry2 = double.parse(entry2Controller.text);
double entry3 = double.parse(entry3Controller.text);
//每个下拉选项三个方程
double total1 = entry1 * entry2; //FOR DROPDOWN A
double total2 = entry1 + entry2 + entry3 //FOR DROPDOWN B
double total3 = entry1*entry2+entry3 //FOR DROPDOWN C
String result = '';
return 结果; // 当我应用计算按钮时,如何 return 选择当前下拉菜单的结果??? }
//---------------------------------------- ------------------------
child: RaisedButton(
child: Text(
'Calcular',
textScaleFactor: 1.5,
),
color: Theme.of(context).accentColor,
textColor: Theme.of(context).primaryColorDark,
onPressed: () {
setState(() {
if (_formKey.currentState.validate()) {
this.displayResult =
_calculateTotalReturns();
}
});
},
),
您将需要一个全局变量来存储用户从下拉列表中选择的值。例如,
String selectedValue; // <-- this will be a global variable.
在 onChanged
onChanged: (String newValueSelected) {
selectedValue = newValueSelected;
}
然后你可以在 _calculateTotalReturns()
方法中访问这个变量并且 return 相应的正确结果就像..
String _calculateTotalReturns() {
//other code
String result;
if(selectedValue == 'A'){
result = total1.toString();
}
else if(selectedValue == 'B'){
result = total2.toString();
}
else{
result = total3.toString();
}
return result;
}