Android CalendarView 日历视图

Android CalendarView 日历视图控件主要用于显示和选择日期

CalendarView 显示的时间范围可以通过 android:minDateandroid:maxDate 两个属性进行设置

CalendarView

我们可以使用 <CalendarView> 创建一个 CalendarView

<CalendarView
    android:layout_width="wrap_content" 
    android:layout_height="wrap_conent" />

接下来我们写一个 demo 演示下 CalendarView

  1. 创建一个 空的 Android 项目 cn.twle.android.CalendarView

  2. 修改 activity_main.xml 添加两个按钮

    <?xml version="1.0" encoding="utf-8" ?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:padding="8dp" 
        android:orientation="vertical" >
    
        <CalendarView
            android:id="@+id/calendarview"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    
    </LinearLayout>
    

运行范例,显示如下

CalendarView 属性和事件

CalendarView 属性很多,我们只介绍几个主要的

属性 说明
android:firstDayOfWeek 设置一个星期的第一天
android:maxDate 最大的日期显示在这个日历视图 mm/dd /yyyy 格式
android:minDate 最小的日期显示在这个日历视图 mm/dd /yyyy 格式
android:weekDayTextAppearance 工作日的文本出现在日历标题缩写

CalendarView 事件

CalendarView 会在选择日期时触发 CalendarView.OnDateChangeListener 事件

获得 CalendarView 的值

CalendarView 提供了 getDate() 用于获取 1970-1-1 00:00:00 到用户选择时间经过的毫秒数

我们复用上面的 demo ,然后修改 MainActivity.java

package cn.twle.android.calendarview;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import android.widget.CalendarView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        CalendarView calendarview = (CalendarView) findViewById(R.id.calendarview);

        calendarview.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
            @Override
            public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) {
                Toast.makeText(MainActivity.this,"您选择的时间是:"+ year + "年" + month + "月" + dayOfMonth + "日",Toast.LENGTH_SHORT).show();
            }
        });
    }
}

Android 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.