Text("开始日期:${_selectedDateRange?. Start . tostring()。分割(' ')[0]}!==null "按下按钮显示拾取器")
我得到一个错误,说明字符串为空。我是新的扑动,如果_selectedDateRange?开始是空的,它应该给数据按钮显示选择器或保持相同的数据…我被困住了。请帮帮我
你可以在一个函数或getter中设置它以获得更好的可读性即
String _displayText() {
if (_selectedDateRange?.start != null) {
return 'Start date: ${_selectedDateRange?.start.toString().split(' ')[0]}';
} else {
return 'Press the button to show the picker';
}
}
或
String get _displayText {
if (_selectedDateRange?.start != null) {
return 'Start date: ${_selectedDateRange?.start.toString().split(' ')[0]}';
} else {
return 'Press the button to show the picker';
}
}
然后把它传递给你的文本小部件
Text(_displayText()) // function
Text(_displayText) // getter
用于重用函数
String _displayText(String begin,DateTime? date) {
if (date != null) {
return '$begin date: ${date.toString().split(' ')[0]}';
} else {
return 'Press the button to show the picker';
}
}
像这样使用
Text(_displayText('end',_selectedDateRange?.end)) // function