搜尋套件、儲存庫與 APP 分類

day_night_time_picker 封面
套件詳情v1.3.1

day_night_time_picker

用於 Flutter 的日夜時間選擇器。具有太陽和月亮資源的精美日夜動畫。

AndroidiOSWebmacOSWindowsLinux
近 30 天下載
6960
喜歡數
700
Pub 分數
145

安裝套件

flutter pub add day_night_time_picker

套件介紹

根據套件公開資料產生的選型評估,僅供參考。

一個 Flutter 套件,提供美觀的時間選擇器,具備流暢的日夜轉換效果,並配備動畫太陽與月亮視覺效果。透過動態照明效果,直觀呈現一天中的時間,提升使用者體驗。此選擇器可自訂,支援 Android、iOS、Web、macOS、Windows 與 Linux 多個平台。適用於重視時間感知與視覺吸引力的應用。

適用情境

  • 需要時間選擇且具有視覺主題變化的應用程式介面
  • 帶有日夜主題的時鐘或排程應用
  • 在生活風格或生產力應用中使用友善的時間選擇器

主要特色

  • 動畫太陽與月亮過渡
  • 日夜視覺主題整合
  • 跨平台相容性
  • 可自訂外觀
  • 流暢的動畫
  • 透過 pub add 的簡單整合

適合對象

  • 開發基於時間應用程式的開發者
  • 注重設計的UI實作
  • 針對日常習慣或睡眠追蹤的應用

使用建議

  • 可能需要額外的資源管理
  • 低階裝置上的動畫效能
  • 超出視覺主題之外的自訂功能有限

原始 README

以下為關聯原始碼儲存庫的 README 原文快照,最新內容請造訪原始碼儲存庫。

DayNightTimePicker

All Contributors

A day night time picker for Flutter with Zero Dependencies.

Default style:


IOS style:


View it on pub.dev

Installation

Add to pubspec.yaml.

dependencies:
  day_night_time_picker:

Usage

To use plugin, just import package

import 'package:day_night_time_picker/day_night_time_picker.dart';

Example

TextButton(
    onPressed: () {
        Navigator.of(context).push(
            showPicker(
                context: context,
                value: _time,
                sunrise: TimeOfDay(hour: 6, minute: 0), // optional
                sunset: TimeOfDay(hour: 18, minute: 0), // optional
                duskSpanInMinutes: 120, // optional
                onChange: onTimeChanged,
            ),
        );
    },
    child: Text(
        "Open time picker",
        style: TextStyle(color: Colors.white),
    ),
),

Props

Name Description Default
value Required Display value. It takes in [Time].
onChange Required Return the new time the user picked as [Time].
isInlinePicker Whether to render an inline widget. false
onChangeDateTime Optional Return the new time the user picked as [DateTime].
onCancel Optional Custom callback for the Cancel button. Note: if provided, it will override the default behavior of the Cancel button.
is24HrFormat Show the time in TimePicker in 24 hour format. false
accentColor Accent color of the TimePicker. Theme.of(context).accentColor
unselectedColor Color applied unselected options (am/pm, hour/minute). Colors.grey
cancelText Text displayed for the Cancel button. cancel
okText Text displayed for the Ok button. ok
sunAsset Image asset used for the Sun. Asset provided
moonAsset Image asset used for the Moon. Asset provided
blurredBackground Whether to blur the background of the [Modal]. false
barrierColor Color of the background of the [Modal]. Colors.black45
borderRadius Border radius of the [Container] in [double]. 10.0
elevation Elevation of the [Modal] in [double]. 12.0
dialogInsetPadding Inset padding of the [Modal] in EdgeInsets. EdgeInsets.symmetric(horizontal: 40.0, vertical: 24.0)
barrierDismissible Whether clicking outside should dismiss the [Modal]. true
showCancelButton Whether to show the cancel button or not true
iosStylePicker Whether to display a IOS style picker (Not exactly the same). false
hourLabel The label to be displayed for hour picker. Only for iosStylePicker. 'hours'
minuteLabel The label to be displayed for minute picker. Only for iosStylePicker. 'minutes'
minuteInterval Steps interval while changing minute. Accepts TimePickerInterval enum. TimePickerInterval.ONE
secondInterval Steps interval while changing minute. Accepts TimePickerInterval enum. TimePickerInterval.ONE
disableMinute Disables the minute picker. false
disableHour Disables the hour picker. false
minHour Selectable minimum hour. Defaults to 1[12hr] or 0[24hr]
maxHour Selectable maximum hour. Defaults to 12[12hr] or 23[24hr]
minMinute Selectable minimum minute. 0
minSecond Selectable minimum second. 0
maxMinute Selectable maximum minute. 59
maxSecond Selectable maximum second. 59
displayHeader Whether to display the sun moon animation. true
isOnValueChangeMode Whether to hide okText, cancelText and return value on every onValueChange. Only for Inline widget false
focusMinutePicker Whether or not the minute picker is auto focus/selected. false
themeData ThemeData to use for the widget. Theme.of(context)
okStyle Ok button's text style. const TextStyle(fontWeight: FontWeight.bold)
cancelStyle Cancel button's text style. const TextStyle(fontWeight: FontWeight.bold)
buttonStyle Button's style. If cancelButtonStyle not provided, it applies to ok and cancel buttons. Theme.of(context).colorScheme.secondary
cancelButtonStyle Cancel button style. Theme.of(context).colorScheme.secondary
buttonsSpacing Spacing between cancel and ok buttons. 0
wheelHeight Only for createInlinePicker Height of the Wheel 240
hideButtons Whether to hide the buttons (ok and cancel). false
disableAutoFocusToNextInput Whether to disable the auto focus to the next input after current input is selected. false
width Fixed width of the Picker container. 300 (350 for iosStyle)
height Fixed height of the Picker container. 400
sunrise Sunrise time. 400
sunset Sunset time. 400
duskSpanInMinutes Dusk span in minutes. 400
settings Optional Data that might be useful in constructing a [Route].

Contributors

Thanks goes to these wonderful people:

Subhamay Dutta
Subhamay Dutta

💻 📖
Andrew Zuo
Andrew Zuo

💻
Mohammad Odeh
Mohammad Odeh

💻
Hashem Alayan
Hashem Alayan

💻
gohdong
gohdong

💻
nohli
nohli

💻
sander102907
sander102907

💻
Sobhan Moradi
Sobhan Moradi

🎨
Omar Dahhane
Omar Dahhane

💻
Fatih Yaman
Fatih Yaman

🎨
JerryShen
JerryShen

💻
本多健也
本多健也

💻
Tempelritter
Tempelritter

💻 📖
Silfalion
Silfalion

💻
Chengxi Gu
Chengxi Gu

💻
Saif Billah
Saif Billah

💻
Mark Szente
Mark Szente

💻
Juan Carlos Ramón Condezo
Juan Carlos Ramón Condezo

🎨
Chuanyi
Chuanyi

📖
Leon Schwanitz
Leon Schwanitz

🎨
Liam DeCoste
Liam DeCoste

🐛
qqjjjj
qqjjjj

💻
Moshe Yamini
Moshe Yamini

💻
Ryota Kobayashi
Ryota Kobayashi

💻
Asraful Islam
Asraful Islam

💻

This project follows the all-contributors specification. Contributions of any kind welcome!


LICENCE

Copyright 2023 Subhamay Dutta

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

所屬分類

原始碼儲存庫

使用此套件的專案