android自定义控件android开源APPMaterial Design

安卓分享—一款优雅的日历控件-Material Calendar

2017-06-12  本文已影响403人  暗尘随码去

因为项目中需要日历控件,作为一个懒惰的代码搬运工第一反应当然是去GitHub找,不过找到好看又好用的当然还是要拿出来和大家分享的,希望不要得到鄙视的目光。老规矩先上效果图。

calendarView.gif

作为一个简单的代码搬运工我的反应是这样的


666.gif

是这样的:

6+++.gif
        classpath 'com.android.tools.build:gradle:2.4.0-alpha7'

替换成

        classpath 'com.android.tools.build:gradle:2.2.2'

使用

compile 'com.prolificinteractive:material-calendarview:1.4.3'
<com.prolificinteractive.materialcalendarview.MaterialCalendarView
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/calendarView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:mcv_showOtherDates="all"
    app:mcv_selectionColor="#00F"
    />
@Override
    public void onDateSelected(@NonNull MaterialCalendarView widget, @Nullable CalendarDay date, boolean selected) {
        textView.setText(getSelectedDatesString());
    }

    @Override
    public void onMonthChanged(MaterialCalendarView widget, CalendarDay date) {
        //noinspection ConstantConditions
        getSupportActionBar().setTitle(FORMATTER.format(date.getDate()));
    }

    private String getSelectedDatesString() {
        CalendarDay date = widget.getSelectedDate();
        if (date == null) {
            return "No Selection";
        }
        return FORMATTER.format(date.getDate());
    }

个性化功能定制-结合demo说明

mcv.state().edit()
  .setFirstDayOfWeek(Calendar.WEDNESDAY)
  .setMinimumDate(CalendarDay.from(2016, 4, 3))
  .setMaximumDate(CalendarDay.from(2016, 5, 12))
  .setCalendarDisplayMode(CalendarMode.WEEKS)
  .commit();
FirstDayOfWeek.png

2.demo中功能

demo.png Disabled_红色日期为不可选.png

暗尘随码去 明月逐人来

star.gif
上一篇 下一篇

猜你喜欢

热点阅读