android studio创建android项目(9)——DatePicker和TimePicker的使用

本文介绍了如何在Android Studio中使用DatePicker和TimePicker。对于DatePicker,讲述了从项目需求到布局文件、Activity的实现过程,并展示了选择日期后的运行结果。对于TimePicker,同样详细阐述了其功能实现及运行效果,包括时间选择后的Toast提示。附带apk下载链接供测试体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、DatePicker日期选择器

1、项目需求

1、用户可以选择任意日期
2、日期的默认选择是今天的日期
3、选择日期后,Toast提示已选择的日期

2、布局文件
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.gui.datepickerdemo.MainActivity">

    <DatePicker
        android:id="@+id/datepicker"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
    </DatePicker>
</RelativeLayout>

3、Activity
package com.example.gui.datepickerdemo;


import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.DatePicker;
import java.util.Calendar;

public class MainActivity extends AppCompatActivity {

    DatePicker datePicker;
    int year; //今年
    int month; //当前月份
    int day; //今天

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //获取当前的年月日
        Calendar calendar= Calendar.getInstance(); //获取日历的实例
        year=calendar.get(Calendar.YEAR);
        month=calendar.get(Calendar.MONTH);//实际月份需要加1
        day=calendar.get(Calendar.DATE);

        //监听日期选择器
        datePicker=(DatePicker)findViewById(R.id.datepicker);
        datePicker.init(year,month,day,new DatePicker.OnDateChangedListener(){
            @Override
            public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
                Log.e("datepicker—你选择的日期是:",year+"-"+(monthOfYear+1)+"-"+dayOfMonth);
            }
        });
    }
}

4、运行结果

apk下载链接:https://pan.baidu.com/s/1AMl21MeL--POF4mwSL87UQ
提取码:xwij
运行结果:
1、启动页:
在这里插入图片描述
2、日期选择20181218,有如下结果:
在这里插入图片描述

二、TimePicker时间选择器

1、项目需求

1、用户可以选择任意时间
2、选择时间后,Toast提示已选择的时间

2、布局文件
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.gui.timepickertime.MainActivity">

    <TimePicker
        android:id="@+id/timepicker"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
    </TimePicker>
</RelativeLayout>

3、Activity
package com.example.gui.timepickertime;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TimePicker;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    TimePicker timePicker;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //时间选择器的监听
        timePicker=(TimePicker)findViewById(R.id.timepicker);
        timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener(){
            @Override
            public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
                String time="你选择的时间是:"+hourOfDay+"时"+minute+"分";
                Toast.makeText(getApplicationContext(),time,Toast.LENGTH_SHORT).show();
            }
        });
    }
}

4、运行结果

apk下载链接:https://pan.baidu.com/s/16iMJExh7DisA-YolVOOGcA
提取码:4a4n
运行结果:
1、启动页:
在这里插入图片描述
2、时间选择12点5分,有如下结果:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值