# RetainedDateTimePickers **Repository Path**: MiniTriangle/RetainedDateTimePickers ## Basic Information - **Project Name**: RetainedDateTimePickers - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-06-25 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # RetainedDateTimePickers Android Library to help you with your date & time pickers while retaining the instance of the pickers on orientation change. # Installation #### Gradle ```groovy compile 'com.github.k0shk0sh:RetainedDateTimePickers:1.0.2' ``` #### Maven ```xml com.github.k0shk0sh RetainedDateTimePickers 1.0.2 aar ``` Usage ===== Your `Activity` or `Fragment` must implement `DatePickerCallback` and or `TimePickerCallback` to receive the selected date & selected time if applicable. RetainedDateTimePickers should be treated as any normal `DialogFragment`: - DatePickerDialog Only ```java DatePickerFragmentDialog.newInstance().show(getSupportFragmentManager(), "DatePickerFragmentDialog"); ``` - TimePickerDialog Only ```java //default 12 hours format TimePickerFragmentDialog.newInstance().show(getSupportFragmentManager(), "TimePickerFragmentDialog"); //24 hours format TimePickerFragmentDialog.newInstance(true).show(getSupportFragmentManager(), "TimePickerFragmentDialog"); ``` - DateTimePickerDialog ```java DatePickerFragmentDialog.newInstance(true).show(getSupportFragmentManager(), "DatePickerFragmentDialog"); ``` - Date & Time PickerDialog Customization ```java DatePickerFragmentDialog.newInstance( DateTimeBuilder.get() .withTime(true) .with24Hours(true) .withSelectedDate(currentDate.getTimeInMillis()) .withMinDate(minDate.getTimeInMillis()) .withMaxDate(maxDate.getTimeInMillis()) .withCurrentHour(12) .withCurrentMinute(30) .withTheme(R.style.PickersTheme)) .show(getSupportFragmentManager(), "DatePickerFragmentDialog"); ``` > **To understand more how the library works, please take a look at the sample app.** Screenshots ====== - **Pickers Portrait Mode**
- **Pickers Landscape Mode**
- **Pickers Custom Themes via Styles**
# Why this library? * DatePickerDialog & TimePickerDialog are not retained on orientation change, you'd do a lot of work to retain them, this library simplify that. * It uses DatePickerDialog & TimePickerDialog internally. * Its simple to use. * Its Customizable (Support Custom Themes). * Minimum API is 16, but it'll probably work in API 9 and above, just make sure you test it out (we use `Support Fragment`). # Dependency Android Support Fragment Library ``v24.2.1`` **Pull requests are welcomed.** # Copyright Notice Copyright (C) 2016 Kosh. Licensed under the [Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0) license (see the LICENSE file).