CalendarListview
CalendarListview предоставляет метод для удобного выбора даты в календаре.
Скриншот
Изображение, ширина 40%.
Зависимости
allprojects{
repositories{
mavenCentral()
}
}
implementation 'io.openharmony.tpc.thirdlib:CalendarListview:1.0.2'
Использование
<com.andexert.calendarlistview.library.DayPickerView
xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:id="$+id:pickerView"
ohos:height="match_parent"
ohos:width="match_parent"/>
DayPickerView dayPickerView = (DayPickerView) findComponentById(ResourceTable.Id_pickerView);
dayPickerView.setController(new DatePickerController() {
@Override
public int getMaxYear() {
// календарь будет отображать год до указанного здесь включительно
return 2023;
}
@Override
public void onDayOfMonthSelected(int year, int month, int day) {
// каждый раз, когда пользователь выбирает новую дату, этот метод будет вызываться
}
@Override
public void onDateRangeSelected(SimpleMonthAdapter.SelectedDays<SimpleMonthAdapter.CalendarDay> selectedDays) {
// когда пользователь выберет две даты, этот метод будет вызван, и можно получить выбранные даты
}
});
Пользовательские атрибуты XML
name | format | description | default_value |
---|---|---|---|
colorCurrentDay | Color | цвет текста текущей даты | 0xff999999 |
colorSelectedDayBackground | Color | фон указателя выбранной даты | 0xffE75F49 |
colorSelectedDayText | Color | цвет текста выбранной даты | 0xfff2f2f2 |
colorPreviousDay | Color | цвет текста дат прошлого месяца | 0xff999999 |
colorNormalDay | Color | цвет текста всех неотмеченных дат | 0xff999999 |
colorMonthName | Color | цвет заголовка месяца | 0xff999999 |
colorDayName | Color | цвет заголовков дней недели | 0xff999999 |
textSizeDay | dimension | размер шрифта дат | 16vp |
textSizeMonth | dimension | размер шрифта заголовков месяцев | 16vp |
textSizeDayName | dimension | размер шрифта названий дней недели | 16vp |
headerMonthHeight | dimension | высота заголовков месяцев | 50vp |
selectedDayRadius | dimension | радиус указателя выбранной даты | 16vp |
calendarHeight | dimension | высота календаря без учёта заголовков | 270vp |
enablePreviousDay | boolean | показывать ли даты прошлого месяца | true |
currentDaySelected | boolean | выбирать ли текущую дату по умолчанию | false |
drawRoundRect | boolean | форма указателя: прямоугольник или круг | false |
firstMonth | Integer | месяц начала отображения | текущий месяц |
lastMonth | Integer | последний месяц отображения | предыдущий месяц |
Обратите внимание: если вы хотите использовать атрибут colorPreviousDay
, сначала установите enablePreviousDay
в значение false.
Требования к запуску примера entry Запустите через DevEco studio и загрузите SDK. В файле build.gradle в разделе dependencies → classpath измените версию на соответствующую версии вашего нового проекта в IDE.
Лицензия MIT
The MIT License (MIT)
Copyright (c) 2014 Robin Chutaux
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
``` ПО ЛЮБОМУ ТРЕБОВАНИЮ, УЩЕРБУ ИЛИ ИНОЙ
ОТВЕТСТВЕННОСТИ, ВОЗНИКШЕЙ В РЕЗУЛЬТАТЕ ДЕЙСТВИЯ КОНТРАКТА, ПРАВОНАРУШЕНИЯ ИЛИ ИНЫМ ОБРАЗОМ В СВЯЗИ С
ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ИНЫМИ ОПЕРАЦИЯМИ С НИМ.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )