我正在使用https://github.com/prolificinteractive/material-calendarview
现在,它可以通过单击向右或向左箭头来更改月份
我如何直接更改年份而不是更改月份。
这可能是android默认的日历 View 吗?
以下是我的多人互动代码-日历
public class ActivityCalendar extends AppCompatActivity implements OnDateSelectedListener, OnMonthChangedListener {
private static final DateFormat FORMATTER = SimpleDateFormat.getDateInstance();
private MaterialCalendarView widget;
private String zodiacSign = "";
private HashMap<String,Integer> hashMapMonth = new HashMap<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_calendar);
widget = (MaterialCalendarView)findViewById(R.id.calendarView);
widget.setOnDateChangedListener(this);
widget.setOnMonthChangedListener(this);
}
@Override
public void onDateSelected(@NonNull MaterialCalendarView widget, @Nullable CalendarDay date, boolean selected) {
String strDate = getSelectedDatesString();
Intent returnIntent = new Intent();
returnIntent.putExtra(TagClass.BIRTH_DATE, strDate);
setResult(Activity.RESULT_OK, returnIntent);
finish();
}
@Override
public void onMonthChanged(MaterialCalendarView widget, CalendarDay date) {
//noinspection ConstantConditions
}
private String getSelectedDatesString() {
CalendarDay date = widget.getSelectedDate();
if (date == null) {
return "No Selection";
}
return FORMATTER.format(date.getDate());
}
}
布局XML
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ActivityCalendar">
<com.prolificinteractive.materialcalendarview.MaterialCalendarView
android:id="@+id/calendarView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
最佳答案
目前该库似乎无法做到这一点。
为了做到这一点,您需要从github下载源代码,并将其作为库模块添加到您的项目中。
然后,我希望至少需要对以下组件进行更改:
ViewPager.OnPageChangeListener
另外,我的印象是,进行这些更改还将导致库中的市长重构。
关于Android:直接在Material-calendarview中更改Year,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34547989/