Skip to content

Commit 568da1e

Browse files
committed
Replaced Day.java by LocalDate.
1 parent 0d2e355 commit 568da1e

File tree

7 files changed

+44
-119
lines changed

7 files changed

+44
-119
lines changed

app/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ dependencies {
3030
implementation project(':collapsiblecalendarview2')
3131
implementation 'androidx.appcompat:appcompat:1.0.2'
3232
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha2'
33+
implementation 'com.jakewharton.threetenabp:threetenabp:1.1.1'
3334

3435
testImplementation 'junit:junit:4.12'
3536

app/src/main/java/com/shrikanthravi/collapsiblecalendarview/MainActivity.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.graphics.Color;
44
import androidx.appcompat.app.AppCompatActivity;
55
import android.os.Bundle;
6+
import android.util.Log;
67
import android.view.View;
78

89
import com.shrikanthravi.collapsiblecalendarview.widget.CollapsibleCalendar;
@@ -26,7 +27,7 @@ protected void onCreate(Bundle savedInstanceState) {
2627
today.add(Calendar.DATE,1);
2728
collapsibleCalendar.addEventTag(today.get(Calendar.YEAR),today.get(Calendar.MONTH),today.get(Calendar.DAY_OF_MONTH),Color.BLUE);
2829

29-
System.out.println("Testing date "+collapsibleCalendar.getSelectedDay().getDay()+"/"+collapsibleCalendar.getSelectedDay().getMonth()+"/"+collapsibleCalendar.getSelectedDay().getYear());
30+
Log.d("Testing date ", collapsibleCalendar.getSelectedDay().toString());
3031
collapsibleCalendar.setCalendarListener(new CollapsibleCalendar.CalendarListener() {
3132
@Override
3233
public void onDaySelect() {

collapsiblecalendarview2/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ android {
3434
dependencies {
3535
implementation 'androidx.appcompat:appcompat:1.0.2'
3636
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
37+
implementation 'com.jakewharton.threetenabp:threetenabp:1.1.1'
3738

3839
testImplementation 'junit:junit:4.12'
3940

collapsiblecalendarview2/src/main/java/com/shrikanthravi/collapsiblecalendarview/data/CalendarAdapter.java

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@
1111
import com.shrikanthravi.collapsiblecalendarview.R;
1212
import com.shrikanthravi.collapsiblecalendarview.widget.UICalendar;
1313

14+
import org.threeten.bp.LocalDate;
15+
import org.threeten.bp.LocalTime;
16+
import org.threeten.bp.Month;
17+
1418
import java.util.ArrayList;
1519
import java.util.Calendar;
1620
import java.util.List;
@@ -25,9 +29,9 @@ public class CalendarAdapter {
2529
private LayoutInflater mInflater;
2630
private int mEventDotSize= UICalendar.EVENT_DOT_BIG;
2731

28-
List<Day> mItemList = new ArrayList<>();
29-
List<View> mViewList = new ArrayList<>();
30-
List<Event> mEventList = new ArrayList<>();
32+
List<LocalDate> mItemList = new ArrayList<>();
33+
List<View> mViewList = new ArrayList<>();
34+
List<Event> mEventList = new ArrayList<>();
3135

3236
public CalendarAdapter(Context context, Calendar cal) {
3337
this.mCal = (Calendar) cal.clone();
@@ -42,7 +46,7 @@ public int getCount() {
4246
return mItemList.size();
4347
}
4448

45-
public Day getItem(int position) {
49+
public LocalDate getItem(int position) {
4650
return mItemList.get(position);
4751
}
4852

@@ -114,26 +118,26 @@ public void refresh() {
114118
numDay = i;
115119
}
116120

117-
Day day = new Day(numYear, numMonth, numDay);
121+
LocalDate day = LocalDate.of(numYear, numMonth + 1, numDay);
118122
View view;
119123
if(mEventDotSize==UICalendar.EVENT_DOT_SMALL)
120124
view = mInflater.inflate(R.layout.day_layout_small, null);
121125
else
122126
view = mInflater.inflate(R.layout.day_layout, null);
123127

124-
TextView txtDay = (TextView) view.findViewById(R.id.txt_day);
125-
ImageView imgEventTag = (ImageView) view.findViewById(R.id.img_event_tag);
128+
TextView txtDay = view.findViewById(R.id.txt_day);
129+
ImageView imgEventTag = view.findViewById(R.id.img_event_tag);
126130

127-
txtDay.setText(String.valueOf(day.getDay()));
128-
if (day.getMonth() != mCal.get(Calendar.MONTH)) {
131+
txtDay.setText(String.valueOf(day.getDayOfMonth()));
132+
if (day.getMonthValue() -1 != mCal.get(Calendar.MONTH)) {
129133
txtDay.setAlpha(0.3f);
130134
}
131135

132136
for (int j = 0; j < mEventList.size(); j++) {
133137
Event event = mEventList.get(j);
134138
if (day.getYear() == event.getYear()
135-
&& day.getMonth() == event.getMonth()
136-
&& day.getDay() == event.getDay()) {
139+
&& day.getMonthValue() == event.getMonth()
140+
&& day.getDayOfMonth() == event.getDay()) {
137141
imgEventTag.setVisibility(View.VISIBLE);
138142
imgEventTag.setColorFilter(event.getColor(),PorterDuff.Mode.SRC_ATOP);
139143
}

collapsiblecalendarview2/src/main/java/com/shrikanthravi/collapsiblecalendarview/data/Day.java

Lines changed: 0 additions & 67 deletions
This file was deleted.

collapsiblecalendarview2/src/main/java/com/shrikanthravi/collapsiblecalendarview/widget/CollapsibleCalendar.java

Lines changed: 18 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@
99
import android.graphics.Color;
1010
import android.os.Handler;
1111
import android.util.AttributeSet;
12-
import android.view.GestureDetector;
13-
import android.view.MotionEvent;
1412
import android.view.View;
1513
import android.view.ViewGroup;
1614
import android.view.animation.Animation;
@@ -23,11 +21,12 @@
2321

2422
import com.shrikanthravi.collapsiblecalendarview.R;
2523
import com.shrikanthravi.collapsiblecalendarview.data.CalendarAdapter;
26-
import com.shrikanthravi.collapsiblecalendarview.data.Day;
2724
import com.shrikanthravi.collapsiblecalendarview.data.Event;
2825
import com.shrikanthravi.collapsiblecalendarview.listener.OnSwipeTouchListener;
2926
import com.shrikanthravi.collapsiblecalendarview.view.ExpandIconView;
3027

28+
import org.threeten.bp.LocalDate;
29+
3130
import java.text.SimpleDateFormat;
3231
import java.util.Calendar;
3332

@@ -187,9 +186,9 @@ protected void redraw() {
187186
// redraw all views of day
188187
if (mAdapter != null) {
189188
for (int i = 0; i < mAdapter.getCount(); i++) {
190-
Day day = mAdapter.getItem(i);
189+
LocalDate day = mAdapter.getItem(i);
191190
View view = mAdapter.getView(i);
192-
TextView txtDay = (TextView) view.findViewById(R.id.txt_day);
191+
TextView txtDay = view.findViewById(R.id.txt_day);
193192
txtDay.setBackgroundColor(Color.TRANSPARENT);
194193
txtDay.setTextColor(getTextColor());
195194

@@ -296,17 +295,17 @@ private int getSuitableRowIndex() {
296295
}
297296
}
298297

299-
public void onItemClicked(View view, Day day) {
298+
public void onItemClicked(View view, LocalDate day) {
300299
select(day);
301300

302301
Calendar cal = mAdapter.getCalendar();
303302

304303
int newYear = day.getYear();
305-
int newMonth = day.getMonth();
304+
int newMonth = day.getMonthValue() - 1;
306305
int oldYear = cal.get(Calendar.YEAR);
307306
int oldMonth = cal.get(Calendar.MONTH);
308307
if (newMonth != oldMonth) {
309-
cal.set(day.getYear(), day.getMonth(), 1);
308+
cal.set(day.getYear(), day.getMonthValue() -1, 1);
310309

311310
if (newYear > oldYear || newMonth > oldMonth) {
312311
mCurrentWeekIndex = 0;
@@ -402,43 +401,32 @@ public int getMonth() {
402401
return mAdapter.getCalendar().get(Calendar.MONTH);
403402
}
404403

405-
public Day getSelectedDay() {
404+
public LocalDate getSelectedDay() {
406405
if (getSelectedItem()==null){
407406
Calendar cal = Calendar.getInstance();
408407
int day = cal.get(Calendar.DAY_OF_MONTH);
409408
int month = cal.get(Calendar.MONTH);
410409
int year = cal.get(Calendar.YEAR);
411-
return new Day(
410+
return LocalDate.of(
412411
year,
413412
month+1,
414413
day);
415414
}
416-
return new Day(
417-
getSelectedItem().getYear(),
418-
getSelectedItem().getMonth(),
419-
getSelectedItem().getDay());
415+
return getSelectedItem();
420416
}
421417

422-
public boolean isSelectedDay(Day day) {
423-
return day != null
424-
&& getSelectedItem() != null
425-
&& day.getYear() == getSelectedItem().getYear()
426-
&& day.getMonth() == getSelectedItem().getMonth()
427-
&& day.getDay() == getSelectedItem().getDay();
418+
public boolean isSelectedDay(LocalDate day) {
419+
return day != null && day == getSelectedItem();
428420
}
429421

430-
public boolean isToady(Day day) {
431-
Calendar todayCal = Calendar.getInstance();
432-
return day != null
433-
&& day.getYear() == todayCal.get(Calendar.YEAR)
434-
&& day.getMonth() == todayCal.get(Calendar.MONTH)
435-
&& day.getDay() == todayCal.get(Calendar.DAY_OF_MONTH);
422+
public boolean isToady(LocalDate day) {
423+
return day == LocalDate.now();
436424
}
437425

438426
public int getSelectedItemPosition() {
439427
int position = -1;
440428
for (int i = 0; i < mAdapter.getCount(); i++) {
441-
Day day = mAdapter.getItem(i);
429+
LocalDate day = mAdapter.getItem(i);
442430

443431
if (isSelectedDay(day)) {
444432
position = i;
@@ -451,7 +439,7 @@ public int getSelectedItemPosition() {
451439
public int getTodayItemPosition() {
452440
int position = -1;
453441
for (int i = 0; i < mAdapter.getCount(); i++) {
454-
Day day = mAdapter.getItem(i);
442+
LocalDate day = mAdapter.getItem(i);
455443

456444
if (isToady(day)) {
457445
position = i;
@@ -589,8 +577,8 @@ public void setState(int state) {
589577
}
590578
}
591579

592-
public void select(Day day) {
593-
setSelectedItem(new Day(day.getYear(), day.getMonth(), day.getDay()));
580+
public void select(LocalDate day) {
581+
setSelectedItem(day);
594582

595583
redraw();
596584

collapsiblecalendarview2/src/main/java/com/shrikanthravi/collapsiblecalendarview/widget/UICalendar.java

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,25 @@
11
package com.shrikanthravi.collapsiblecalendarview.widget;
22

33
import android.content.Context;
4-
import android.content.res.ColorStateList;
54
import android.content.res.TypedArray;
65
import android.graphics.Color;
76
import android.graphics.PorterDuff;
8-
import android.graphics.Typeface;
97
import android.graphics.drawable.Drawable;
108
import android.util.AttributeSet;
119
import android.view.LayoutInflater;
1210
import android.view.View;
13-
import android.widget.ImageButton;
1411
import android.widget.ImageView;
1512
import android.widget.LinearLayout;
1613
import android.widget.RelativeLayout;
1714
import android.widget.TableLayout;
1815
import android.widget.TextView;
1916

2017
import com.shrikanthravi.collapsiblecalendarview.R;
21-
import com.shrikanthravi.collapsiblecalendarview.data.Day;
22-
import com.shrikanthravi.collapsiblecalendarview.listener.OnSwipeTouchListener;
2318
import com.shrikanthravi.collapsiblecalendarview.view.ExpandIconView;
2419
import com.shrikanthravi.collapsiblecalendarview.view.LockScrollView;
2520

21+
import org.threeten.bp.LocalDate;
22+
2623

2724
public abstract class UICalendar extends LinearLayout {
2825

@@ -79,7 +76,7 @@ public abstract class UICalendar extends LinearLayout {
7976
private Drawable mButtonRightDrawable =
8077
getResources().getDrawable(R.drawable.right_icon);
8178

82-
private Day mSelectedItem = null;
79+
private LocalDate mSelectedItem = null;
8380

8481
private int mButtonLeftDrawableTintColor=Color.BLACK;
8582
private int mButtonRightDrawableTintColor=Color.BLACK;
@@ -189,7 +186,7 @@ protected void setAttributes(TypedArray attrs) {
189186
setButtonLeftDrawableTintColor(attrs.getColor(R.styleable.UICalendar_buttonLeft_drawableTintColor,mButtonLeftDrawableTintColor));
190187
setButtonRightDrawableTintColor(attrs.getColor(R.styleable.UICalendar_buttonRight_drawableTintColor,mButtonRightDrawableTintColor));
191188
setExpandIconColor(attrs.getColor(R.styleable.UICalendar_expandIconColor,mExpandIconColor));
192-
Day selectedItem = null;
189+
mSelectedItem = null;
193190
}
194191

195192
public void setButtonLeftDrawableTintColor(int color){
@@ -350,12 +347,12 @@ public void setButtonRightDrawable(Drawable buttonRightDrawable) {
350347
mBtnNextWeek.setImageDrawable(buttonRightDrawable);
351348
}
352349

353-
public Day getSelectedItem() {
350+
public LocalDate getSelectedItem() {
354351
return mSelectedItem;
355352
}
356353

357-
public void setSelectedItem(Day selectedItem) {
358-
this.mSelectedItem = selectedItem;
354+
public void setSelectedItem(LocalDate selectedDate) {
355+
this.mSelectedItem = selectedDate;
359356
}
360357

361358

0 commit comments

Comments
 (0)