首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在两个不同的EditText字段(开始/结束)中设置从时间选择器开始的时间?

在Android开发中,可以通过以下步骤在两个不同的EditText字段中设置从时间选择器开始的时间:

  1. 创建两个EditText字段,分别用于显示开始时间和结束时间。
  2. 为这两个EditText字段设置点击事件监听器,当用户点击时弹出时间选择器。
  3. 在点击事件监听器中,创建一个Calendar实例,用于保存选择的时间。
  4. 创建一个TimePickerDialog实例,设置初始时间为当前时间,并将选择的时间保存到Calendar实例中。
  5. 在TimePickerDialog的回调方法中,将选择的时间格式化为字符串,并设置到对应的EditText字段中。

以下是一个示例代码:

代码语言:java
复制
// 获取开始时间的EditText字段
EditText startTimeEditText = findViewById(R.id.start_time_edittext);
// 获取结束时间的EditText字段
EditText endTimeEditText = findViewById(R.id.end_time_edittext);

// 为开始时间的EditText字段设置点击事件监听器
startTimeEditText.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // 创建一个Calendar实例,用于保存选择的时间
        Calendar calendar = Calendar.getInstance();

        // 创建一个TimePickerDialog实例
        TimePickerDialog timePickerDialog = new TimePickerDialog(MainActivity.this,
                new TimePickerDialog.OnTimeSetListener() {
                    @Override
                    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                        // 将选择的时间保存到Calendar实例中
                        calendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
                        calendar.set(Calendar.MINUTE, minute);

                        // 格式化时间为字符串
                        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm", Locale.getDefault());
                        String startTime = sdf.format(calendar.getTime());

                        // 设置开始时间到EditText字段中
                        startTimeEditText.setText(startTime);
                    }
                },
                calendar.get(Calendar.HOUR_OF_DAY),
                calendar.get(Calendar.MINUTE),
                true);

        // 显示时间选择器
        timePickerDialog.show();
    }
});

// 为结束时间的EditText字段设置点击事件监听器
endTimeEditText.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // 创建一个Calendar实例,用于保存选择的时间
        Calendar calendar = Calendar.getInstance();

        // 创建一个TimePickerDialog实例
        TimePickerDialog timePickerDialog = new TimePickerDialog(MainActivity.this,
                new TimePickerDialog.OnTimeSetListener() {
                    @Override
                    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                        // 将选择的时间保存到Calendar实例中
                        calendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
                        calendar.set(Calendar.MINUTE, minute);

                        // 格式化时间为字符串
                        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm", Locale.getDefault());
                        String endTime = sdf.format(calendar.getTime());

                        // 设置结束时间到EditText字段中
                        endTimeEditText.setText(endTime);
                    }
                },
                calendar.get(Calendar.HOUR_OF_DAY),
                calendar.get(Calendar.MINUTE),
                true);

        // 显示时间选择器
        timePickerDialog.show();
    }
});

这样,当用户点击开始时间和结束时间的EditText字段时,会弹出时间选择器,选择的时间会显示在对应的EditText字段中。

注意:以上示例代码仅涉及时间选择器的使用,实际开发中可能需要添加错误处理、验证等逻辑。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 领券