zoukankan      html  css  js  c++  java
  • Android开发手记(9) DatePickerDialog 和 TimePickerDialog

    1、DatePickerDialog 

      用于获取用户输入的日期信息。其原型为:

    public DatePickerDialog(Contex contex, DatePickerDialog.OnDateSetListener callback, int year, int month, int day);

      其中,year,month,day是传递给DatePickerDialog的初始值信息,然后通过OnDateSetListener来设置用户选择的日期。

    1  DatePickerDialog dpDlg = new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
    2                     @Override
    3                     public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {
    4                         year = i;
    5                         month = i1;
    6                         day = i2;
    7                         tvDate.setText(year + "-" + month + "-" + day);
    8                     }
    9                 },year,month,day);

      

      完整代码为:

     1 import android.app.DatePickerDialog;
     2 import android.support.v7.app.AppCompatActivity;
     3 import android.os.Bundle;
     4 import android.view.View;
     5 import android.widget.Button;
     6 import android.widget.DatePicker;
     7 import android.widget.TextView;
     8 
     9 import java.util.Calendar;
    10 import java.util.Date;
    11 import java.util.Locale;
    12 
    13 public class MainActivity extends AppCompatActivity {
    14 
    15     private TextView tvDate;
    16     private Button btnDateDlg;
    17     private int year;
    18     private int month;
    19     private int day;
    20 
    21     @Override
    22     protected void onCreate(Bundle savedInstanceState) {
    23         super.onCreate(savedInstanceState);
    24         setContentView(R.layout.activity_main);
    25 
    26         tvDate = (TextView) findViewById(R.id.textView);
    27         btnDateDlg = (Button) findViewById(R.id.button);
    28         Calendar myCalendar = Calendar.getInstance(Locale.CHINA);
    29         Date date = new Date();
    30         myCalendar.setTime(date);
    31 
    32         year = myCalendar.get(Calendar.YEAR);
    33         month = myCalendar.get(Calendar.MONTH);
    34         day = myCalendar.get(Calendar.DAY_OF_MONTH);
    35         tvDate.setText(year + "-" + month + "-" + day);
    36         btnDateDlg.setOnClickListener(new View.OnClickListener() {
    37             @Override
    38             public void onClick(View view) {
    39                 DatePickerDialog dpDlg = new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
    40                     @Override
    41                     public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {
    42                         year = i;
    43                         month = i1;
    44                         day = i2;
    45                         tvDate.setText(year + "-" + month + "-" + day);
    46                     }
    47                 },year,month,day);
    48                 dpDlg.show();
    49             }
    50         });
    51 
    52     }
    53 
    54 }

    2、TimePickerDialog 

      用于获取用户输入的日期信息。其原型为:

    public TimePickerDialog(Contex contex, TimePickerDialog.OnTimeSetListener callback, int hour, int minute, boolean is24Hours);

      其中,hour,minute是传递给TimePickerDialog的初始值信息,is24Hours表示是否为24小时制,然后通过OnTimeSetListener来设置用户选择的日期。

    1 TimePickerDialog tpDlg = new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
    2                     @Override
    3                     public void onTimeSet(TimePicker timePicker, int i, int i1) {
    4                         hour = i;
    5                         minute = i1;
    6                         tvTime.setText(year + "-" + month + "-" + day + " " + hour + ":" + minute);
    7                     }
    8                 },hour, minute,true);
    9                 tpDlg.show();

      

      完整代码为:

     1 import android.app.TimePickerDialog;
     2 import android.support.v7.app.AppCompatActivity;
     3 import android.os.Bundle;
     4 import android.view.View;
     5 import android.widget.Button;
     6 import android.widget.TextView;
     7 import android.widget.TimePicker;
     8 
     9 import java.util.Calendar;
    10 import java.util.Date;
    11 import java.util.Locale;
    12 
    13 public class MainActivity extends AppCompatActivity {
    14 
    15     private TextView tvTime;
    16     private Button btnTimeDlg;
    17     private int year;
    18     private int month;
    19     private int day;
    20     private int hour;
    21     private int minute;
    22 
    23     @Override
    24     protected void onCreate(Bundle savedInstanceState) {
    25         super.onCreate(savedInstanceState);
    26         setContentView(R.layout.activity_main);
    27 
    28         tvTime = (TextView) findViewById(R.id.textView);
    29         btnTimeDlg = (Button) findViewById(R.id.button);
    30         Calendar myCalendar = Calendar.getInstance(Locale.CHINA);
    31         Date date = new Date();
    32         myCalendar.setTime(date);
    33 
    34         year = myCalendar.get(Calendar.YEAR);
    35         month = myCalendar.get(Calendar.MONTH);
    36         day = myCalendar.get(Calendar.DAY_OF_MONTH);
    37         hour = myCalendar.get(Calendar.HOUR);
    38         minute = myCalendar.get(Calendar.MINUTE);
    39         tvTime.setText(year + "-" + month + "-" + day + " " + hour + ":" + minute);
    40         btnTimeDlg.setOnClickListener(new View.OnClickListener() {
    41             @Override
    42             public void onClick(View view) {
    43                 TimePickerDialog tpDlg = new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
    44                     @Override
    45                     public void onTimeSet(TimePicker timePicker, int i, int i1) {
    46                         hour = i;
    47                         minute = i1;
    48                         tvTime.setText(year + "-" + month + "-" + day + " " + hour + ":" + minute);
    49                     }
    50                 },hour, minute,true);
    51                 tpDlg.show();
    52             }
    53         });
    54 
    55     }
    56 
    57 }
  • 相关阅读:
    commons-dbutils实现增删改查(spring新注解)
    commons-dbutils实现增删改查
    配置扫描注解的包
    常用注解
    注入集合类型数据
    spring创建bean的三种方式
    switch
    jvm编译器的优化
    java9小工具jshell
    java三元运算符
  • 原文地址:https://www.cnblogs.com/doodle777/p/DateTimePickerDialog.html
Copyright © 2011-2022 走看看