Giter Site home page Giter Site logo

pelmenstar1 / rangecalendar Goto Github PK

View Code? Open in Web Editor NEW
13.0 13.0 0.0 2.37 MB

Customizable calendar in Android with animations and range selection

License: MIT License

Kotlin 100.00%
android android-ui calendar date-picker date-picker-range java

rangecalendar's People

Contributors

pelmenstar1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

rangecalendar's Issues

Future goals

  • Allow cell to have different width and height
  • Introduce non-consecutive ranges
  • Allow to change text alignment in a cell.
  • Connectable transitions (low priority)

Class referenced in the layout file, com.github.pelmenstar1.RangeCalendarView, was not found in the project or the libraries

Hi, I'm trying this library but getting error while adding the calendar in XML. I'm also getting this message after sync
Please remove usages of jcenter()Maven repository from your build scripts and migrate your build to other Maven repositories. This repository is deprecated and it will be shut down in the future. See http://developer.android.com/r/tools/jcenter-end-of-service for more information. Currently detected usages in: root project 'RangeCalendarTest', project ':app'

Add better mechanism for observing date, time zone changes

At the moment, the library offers a pretty simple mechanism to do that through BroadcastReceiver. When the view is attached to the screen it's enabled, when detached - disabled. It'd better if the library offers a better way to do it.

Move the logic out of the RangeCalendarView and disable the feature by default, because registering BroadcastReceiver and processing notifications about changes is not cheap. Instead, do it through a manager-like class that will do the following:
a) be Lifecycle-aware, so we won't constantly de/register the BroadcastReceiver when the view is on/off the screen. Anyway, there should be a way not to use Lifecycle, instead, manually un/register the BroadcastReceiver.
b) provide a way to enable/disable the observation of some properties (like observe time zone changes but not date ones)

Meanwhile, the RangeCalendarView should have a public API that would notify the calendar about these changes.

Allow ranges with skipped cells

These ranges are like [1; 4] โˆช [6; 7], so that there is no 5 cell in the range

This will be a completely different model than simple ranges so fast week selection will likely be disallowed.

React to configuration changes

At the moment, the library does nothing on configuration changes. Instead, we could update things based on it (like locale). Of course, it will only work if the host activity is not recreated on config changes.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.