Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在MaterialCalendarView中更改当前日期颜色_Android_Colors_Android Widget_Android Calendar_Calendarview - Fatal编程技术网

Android 在MaterialCalendarView中更改当前日期颜色

Android 在MaterialCalendarView中更改当前日期颜色,android,colors,android-widget,android-calendar,calendarview,Android,Colors,Android Widget,Android Calendar,Calendarview,我正在使用。代码如下: <com.prolificinteractive.materialcalendarview.MaterialCalendarView android:id="@+id/calendar_view" android:layout_width="wrap_content" android:layout_height="0dp" android:layout_gravity="center" android:layout_margi

我正在使用。代码如下:

<com.prolificinteractive.materialcalendarview.MaterialCalendarView
    android:id="@+id/calendar_view"
    android:layout_width="wrap_content"
    android:layout_height="0dp"
    android:layout_gravity="center"
    android:layout_margin="@dimen/standard_space"
    android:layout_weight="1"
    app:mcv_dateTextAppearance="@dimen/very_small_text_size"
    app:mcv_showOtherDates="all"/>

我想给当前日期加上黑色边界,我怎么能给呢


提前感谢。

如果要设置所有选定日期的颜色,必须将此行添加到xml中:

 app:mcv_selectionColor="@color/yourColor"
和选择当前日期:

calendarView.setDateSelected(Calendar.getInstance(),true);
如果只想为当前日期设置不同的颜色,则必须向MaterialCalendarView添加装饰器:

 calendarView.addDecorator(new DayViewDecorator() {
        @Override
        public boolean shouldDecorate(CalendarDay day) {
            Calendar cal1 = day.getCalendar();
            Calendar cal2 = Calendar.getInstance();

            return (cal1.get(Calendar.ERA) == cal2.get(Calendar.ERA)
                    && cal1.get(Calendar.YEAR) == cal2.get(Calendar.YEAR)
                    && cal1.get(Calendar.DAY_OF_YEAR) == cal2.get(Calendar.DAY_OF_YEAR));
        }

        @Override
        public void decorate(DayViewFacade view) {
            view.setBackgroundDrawable(ContextCompat.getDrawable(MainActivity.this,R.drawable.selector));
        }
    });
其中selector是您的custom selector.xml,例如:

 <selector xmlns:android="http://schemas.android.com/apk/res/android"
android:exitFadeDuration="@android:integer/config_shortAnimTime">

<item
    android:state_checked="true"
    android:drawable="@color/yourColor"
    />

<item
    android:state_pressed="true"
    android:drawable="@color/yourColor"
    />

<item android:drawable="@android:color/transparent" />

选择器参考链接:

装饰参考链接: