Flutter 如何在不点击一个按钮的情况下在页面上显示日期选择器?
到目前为止,所有的例子都是在点击一个标签后弹出的日期选择器 是否有如下所示的显示日期选择器的方法?谢谢Flutter 如何在不点击一个按钮的情况下在页面上显示日期选择器?,flutter,datepicker,Flutter,Datepicker,到目前为止,所有的例子都是在点击一个标签后弹出的日期选择器 是否有如下所示的显示日期选择器的方法?谢谢 您始终可以将选择器视为小部件,这就是为什么不需要通过单击按钮来调用它们的原因。检查下面的完整示例或联机运行 显示Cupertino日期选择器的示例代码: import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } cla
您始终可以将选择器视为小部件,这就是为什么不需要通过单击按钮来调用它们的原因。检查下面的完整示例或联机运行 显示Cupertino日期选择器的示例代码:
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(title: 'Flutter Demo Home Page'),
);
}
}
class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
final String title;
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: CupertinoDatePicker(
mode: CupertinoDatePickerMode.date,
initialDateTime: DateTime.now(),
onDateTimeChanged: (DateTime value) {},
),
);
}
}
import'包装:flift/cupertino.dart';
进口“包装:颤振/材料.省道”;
void main(){
runApp(MyApp());
}
类MyApp扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回材料PP(
标题:“颤振演示”,
主题:主题数据(
主样本:颜色。蓝色,
),
主页:MyHomePage(标题:“颤振演示主页”),
);
}
}
类MyHomePage扩展StatefulWidget{
MyHomePage({Key,this.title}):超级(Key:Key);
最后的字符串标题;
@凌驾
_MyHomePageState createState()=>\u MyHomePageState();
}
类_MyHomePageState扩展状态{
@凌驾
小部件构建(构建上下文){
返回脚手架(
appBar:appBar(
标题:文本(widget.title),
),
主体:Cupertinodepicker(
模式:CupertinodeTatePickerMode.date,
initialDateTime:DateTime.now(),
onDateTimeChanged:(日期时间值){},
),
);
}
}
对于材质小部件:
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: CalendarDatePicker(
onDateChanged: (DateTime value) {},
lastDate: DateTime.now().add(Duration(days: 30)),
firstDate: DateTime.now(),
initialDate: DateTime.now(),
),
);
}
}
class\u MyHomePageState扩展状态{
@凌驾
小部件构建(构建上下文){
返回脚手架(
appBar:appBar(
标题:文本(widget.title),
),
正文:日历日期选择器(
onDateChanged:(日期时间值){},
lastDate:DateTime.now().add(持续时间(天):30)),
firstDate:DateTime.now(),
initialDate:DateTime.now(),
),
);
}
}
如果您对此有任何进一步的疑问,请告诉我。谢谢D C,这是有道理的。然而,非iOS也能显示Cupertino的日期选择器吗?或者必须有另一个小部件存在,以便非iOS小部件可以显示材料的日期选择器?是的,在android设备上使用Cupertino小部件将非常好。此外,如果您使用Cupertino小部件,则它们会在所有设备上显示Cupertino小部件,这意味着它们不会自动切换到材质。您必须根据设备使用条件从材质切换到Cupertino。您必须知道设备运行在哪个平台上,并在此基础上显示特定的小部件。但是为了简化这项工作,你可以使用这个软件包。如果您对日期选取者有任何进一步的疑问,请告诉我。谢谢,如果我有疑问,请联系DC:D@DC,你知道怎么解决这个问题吗?