安卓原生自带的日期选择器、时间选择器使用方法

2025-11-24 07:06:01

1、首先新建一个空白窗口Activity,XML布局如下:

安卓原生自带的日期选择器、时间选择器使用方法

2、Activity的代码实现如下:

public class MainActivity extends AppCompatActivity {

    private TextView timeShow;

    //定义一个TextView控件对象,显示得到的时间日期

    private Button btn_date;

    private Button btn_time;

    DateFormat format =  DateFormat.getDateTimeInstance();

    //获取日期格式器对象

    Calendar calendar = Calendar.getInstance(Locale.CHINA);

     //获取日期格式器对象

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        timeShow = ((TextView) findViewById(R.id.time));

        btn_date = ((Button) findViewById(R.id.btn_date));

         //得到页面设定日期的按钮控件对象

        btn_time = ((Button) findViewById(R.id.btn_time));

        updateTimeShow(); 

         //将页面TextView的显示更新为最新时间

        btn_date.setOnClickListener(new View.OnClickListener() {

             //设置按钮的点击事件监听器

            @Override

            public void onClick(View v) {

                //生成一个DatePickerDialog对象,并显示。显示的DatePickerDialog控件可以选择年月日,并设置

                DatePickerDialog datePickerDialog = new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {

                    @Override

                    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {

                        //修改日历控件的年,月,日

                        //这里的year,monthOfYear,dayOfMonth的值与DatePickerDialog控件设置的最新值一致

                        calendar.set(Calendar.YEAR,year);

                        calendar.set(Calendar.MONTH,month);

                        calendar.set(Calendar.DAY_OF_MONTH,dayOfMonth);

                        updateTimeShow();

                    }

                }, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH));

                datePickerDialog.show();

                updateTimeShow(); 

                //将页面TextView的显示更新为最新时间

            }

        });

        btn_time.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View v) {

                TimePickerDialog timePickerDialog = new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {

                    @Override

                    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {

                        //同DatePickerDialog控件

                        calendar.set(Calendar.HOUR_OF_DAY,hourOfDay);

                        calendar.set(Calendar.MINUTE,minute);

                    }

                },calendar.get(Calendar.HOUR_OF_DAY),calendar.get(Calendar.MINUTE),true);

                timePickerDialog.show();

                updateTimeShow();

                //将页面TextView的显示更新为最新时间

            }

        });

    }

    private void updateTimeShow(){ 

        //将页面TextView的显示更新为最新时间

        timeShow.setText(format.format(calendar.getTime()));

    }

}

3、最终测试效果如下:

安卓原生自带的日期选择器、时间选择器使用方法

安卓原生自带的日期选择器、时间选择器使用方法

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢