Step 1. Add the JitPack repository to your build file
Add it in your root settings.gradle at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Add it in your settings.gradle.kts at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}
Add to pom.xml
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Add it in your build.sbt at the end of resolvers:
resolvers += "jitpack" at "https://jitpack.io"
Add it in your project.clj at the end of repositories:
:repositories [["jitpack" "https://jitpack.io"]]
Step 2. Add the dependency
dependencies {
implementation 'com.github.alirezaafkar:PersianDatePicker:1.1.1'
}
dependencies {
implementation("com.github.alirezaafkar:PersianDatePicker:1.1.1")
}
<dependency>
<groupId>com.github.alirezaafkar</groupId>
<artifactId>PersianDatePicker</artifactId>
<version>1.1.1</version>
</dependency>
libraryDependencies += "com.github.alirezaafkar" % "PersianDatePicker" % "1.1.1"
:dependencies [[com.github.alirezaafkar/PersianDatePicker "1.1.1"]]
An Android DatePicker for Persian Calendar
Add as an Android Library Project:
Add this line to root layout element:
<pre><code>xmlns:persianDatePicker="http://schemas.android.com/apk/res-auto"</code></pre>Add PersianDatePicker view:
<pre><code><ir.smartlab.persindatepicker.PersianDatePicker android:layout_width="wrap_content" android:layout_height="wrap_content"/></code></pre>Add Source and other required things to your Project:
Add this to your /res/values/attrs.xml:
<pre><code><declare-styleable name="PersianDatePicker"> <attr name="minYear" format="integer" /> <attr name="maxYear" format="integer" /> <attr name="selectedYear" format="integer" /> <attr name="selectedMonth" format="integer" /> <attr name="selectedDay" format="integer" /> <attr name="displayMonthNames" format="boolean" /> <attr name="yearRange" format="integer" /> </declare-styleable></code></pre>Display a PersianDatePicker with current Hijri Shamsi (Jalali) values:
<pre><code><ir.smartlab.persindatepicker.PersianDatePicker android:layout_width="wrap_content" android:layout_height="wrap_content"/></code></pre>Display a PersianDatePicker with selected Hijri Shamsi (Jalali) date:
<pre><code><ir.smartlab.persindatepicker.PersianDatePicker android:layout_width="wrap_content" android:layout_height="wrap_content" app:selectedYear="1390" app:selectedMonth="5" app:selectedDay="15" /></code></pre>Display a PersianDatePicker that shows month names:
<pre><code><ir.smartlab.persindatepicker.PersianDatePicker android:layout_width="wrap_content" android:layout_height="wrap_content" app:displayMonthNames="true" /></code></pre>Display a PersianDatePicker that shows years between 1350 and 1450:
<pre><code><ir.smartlab.persindatepicker.PersianDatePicker android:layout_width="wrap_content" android:layout_height="wrap_content" app:maxYear="1450" app:minYear="1350" /></code></pre>You can set a java.util.Date object to PersianDatePpicker in java code:
<pre><code>persianDatePicker.setDisplayDate(new Date());</code></pre>you can also set a ir.smartlab.persindatepicker.util.PersianCalendar object:
<pre><code>PersianCalendar persianCalendar = new PersianCalendar(); persianCalendar.setPersianDate(1393, 6, 28); persianDatePicker.setDisplayPersianDate(persianCalendar);</code></pre>You can get displayed date in java.util.Date or ir.smartlab.persindatepicker.util.PersianCalendar:
<pre><code>Date d = persianDatePicker.getDisplayDate(); // OR PersianCalendar pCal = persianDatePicker.getDisplayPersianDate();</code></pre>In Hijri Shamsi some years are leap year, so the last month of year is 30 days (not 29 days). PersianDatePicker take cares of leap years. This means that users will never pick a wrong date.
PersianDatepicker is heavily based on AOSP (https://source.android.com) and persian-calendar (https://github.com/mortezaadi/persian-calendar).
1.0
Apache License Version 2.0