时间、日期选择器DatePicker、TimePicker

来源:互联网 发布:shell执行python文件 编辑:程序博客网 时间:2024/04/30 00:31

java代码

package com.example.zhang.choosedate;import android.os.Bundle;import android.support.design.widget.FloatingActionButton;import android.support.design.widget.Snackbar;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget.Toolbar;import android.view.View;import android.view.Menu;import android.view.MenuItem;import android.widget.DatePicker;import android.widget.EditText;import android.widget.TimePicker;import java.util.Calendar;public class MainActivity extends AppCompatActivity {    DatePicker datePicker;    TimePicker timePicker;    EditText editText;    //定义五个记录当前时间的变量    private int year, month, day, hour, minute;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        datePicker = (DatePicker) findViewById(R.id.dataPicker);        timePicker = (TimePicker) findViewById(R.id.timePicker);        editText = (EditText) findViewById(R.id.editText);        //获取当前的年月日小时分        Calendar c = Calendar.getInstance();        year = c.get(Calendar.YEAR);        month = c.get(Calendar.MONTH);        day = c.get(Calendar.DAY_OF_MONTH);        hour = c.get(Calendar.HOUR);        minute = c.get(Calendar.MINUTE);        //初始化DatePicker组件,初始化指定监听器        datePicker.init(year, month, day, new DatePicker.OnDateChangedListener() {            @Override            public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {                MainActivity.this.year = year;                MainActivity.this.month = monthOfYear;                MainActivity.this.day = dayOfMonth;                //显示当前的日期、时间                showDate(year, monthOfYear, dayOfMonth, hour, minute);            }        });        //为TimePicker指定监听器        timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {            @Override            public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {                MainActivity.this.hour = hourOfDay;                MainActivity.this.minute = minute;                //显示当前的日期、时间                showDate(year, month, day, hourOfDay, minute);            }        });        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);        setSupportActionBar(toolbar);        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);        fab.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)                        .setAction("Action", null).show();            }        });    }    //定义在EditText中显示当前日期、时间的方法    private void showDate(int year, int month, int day, int hour, int minute){        editText.setText("您的购买日期为:" + year + "年" + month + "月" + day + "日" + hour + "时" + minute + "分");    }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        getMenuInflater().inflate(R.menu.menu_main, menu);        return true;    }    @Override    public boolean onOptionsItemSelected(MenuItem item) {        // Handle action bar item clicks here. The action bar will        // automatically handle clicks on the Home/Up button, so long        // as you specify a parent activity in AndroidManifest.xml.        int id = item.getItemId();        //noinspection SimplifiableIfStatement        if (id == R.id.action_settings) {            return true;        }        return super.onOptionsItemSelected(item);    }}

xml代码

<?xml version="1.0" encoding="utf-8"?><!--ScrollView可以让更多的组件通过手指上下滑动而显示在屏幕窗口中--><!--这里要好好注意一下格式--><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    app:layout_behavior="@string/appbar_scrolling_view_behavior"    tools:context="com.example.zhang.choosedate.MainActivity"    tools:showIn="@layout/activity_main">    <TextView        android:id="@+id/textView"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:textColor="#000"        android:textSize="20dp"        android:text="请填写您购书的时间,谢谢!"/>    <DatePicker        android:id="@+id/dataPicker"        android:layout_width="match_parent"        android:layout_height="200dp"        android:layout_marginTop="10dp"        android:calendarViewShown="true"        android:endYear="2020"        android:maxDate="12/31/2019"        android:minDate="12/31/1990"        android:spinnersShown="true"        android:startYear="2015"/>    <TimePicker        android:id="@+id/timePicker"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_marginTop="10dp"        android:layout_gravity="center_vertical"/>    <EditText        android:id="@+id/editText"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:singleLine="false"/></LinearLayout>

效果图
1

0 0
原创粉丝点击