daymoonpicker

Creator: coderz1093

Last updated:

0 purchases

daymoonpicker Image
daymoonpicker Images

Languages

Categories

Add to Cart

Description:

daymoonpicker

daymoonpicker #
Just a day moon time picker

import 'package:daymoonpicker/lib/constants.dart';
import 'package:daymoonpicker/lib/daynight_timepicker.dart';
import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: 'Time picker',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: const Home(),
);
}
}

class Home extends StatefulWidget {
const Home({Key? key}) : super(key: key);

@override
// ignore: library_private_types_in_public_api
_HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {
TimeOfDay _time = TimeOfDay.now().replacing(hour: 11, minute: 30);
bool iosStyle = true;

void onTimeChanged(TimeOfDay newTime) {
setState(() {
_time = newTime;
});
}

@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Center(
child: SingleChildScrollView(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(
"Popup Picker Style",
style: Theme.of(context).textTheme.headline6,
),
Text(
_time.format(context),
textAlign: TextAlign.center,
style: Theme.of(context).textTheme.headline1,
),
const SizedBox(height: 10),
TextButton(
style: TextButton.styleFrom(
backgroundColor: Theme.of(context).colorScheme.secondary,
),
onPressed: () {
Navigator.of(context).push(
showPicker(
context: context,
value: _time,
onChange: onTimeChanged,
minuteInterval: MinuteInterval.FIVE,
// Optional onChange to receive value as DateTime
onChangeDateTime: (DateTime dateTime) {
// print(dateTime);
debugPrint("[debug datetime]: $dateTime");
},
),
);
},
child: const Text(
"Open time picker",
style: TextStyle(color: Colors.white),
),
),
const SizedBox(height: 10),
const Divider(),
const SizedBox(height: 10),
Text(
"Inline Picker Style",
style: Theme.of(context).textTheme.headline6,
),
// Render inline widget
createInlinePicker(
elevation: 1,
value: _time,
onChange: onTimeChanged,
minuteInterval: MinuteInterval.FIVE,
iosStylePicker: iosStyle,
minHour: 9,
maxHour: 21,
is24HrFormat: false,
),
Text(
"IOS Style",
style: Theme.of(context).textTheme.bodyText1,
),
Switch(
value: iosStyle,
onChanged: (newVal) {
setState(() {
iosStyle = newVal;
});
},
)
],
),
),
),
),
);
}
}


copied to clipboard

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.