Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 从timepickerdialog存储时间_Android - Fatal编程技术网

Android 从timepickerdialog存储时间

Android 从timepickerdialog存储时间,android,Android,如何将android中timepickerdialog的时间存储为单独的整数?? 如果用户输入的时间为20:00,我想将其存储为单独的整数22和00,以供进一步使用。 我已经尝试了很多方法。例如,首先对“:”使用split函数拆分字符串,然后对两个子字符串使用parseInt方法。但是它不起作用。请给出一个有效的解决方案 class TimePickerFragment extends DialogFragment implements TimePickerDialog.OnTimeSetLis

如何将android中timepickerdialog的时间存储为单独的整数?? 如果用户输入的时间为20:00,我想将其存储为单独的整数22和00,以供进一步使用。 我已经尝试了很多方法。例如,首先对“:”使用split函数拆分字符串,然后对两个子字符串使用parseInt方法。但是它不起作用。请给出一个有效的解决方案

class TimePickerFragment extends DialogFragment implements TimePickerDialog.OnTimeSetListener {

        @Override
        public Dialog onCreateDialog(Bundle savedInstanceState) {
            final Calendar c = Calendar.getInstance();
            int hour = c.get(Calendar.HOUR_OF_DAY);
            int minute = c.get(Calendar.MINUTE);

            return new TimePickerDialog(getActivity(), this, hour, minute, false);
        }

        public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
            // get hour and minute from here
        }
    }
通过调用此时间选择器对话框

new TimePickerFragment().show(getFragmentManager(), "starttime");

下面是我如何定制我的
TimePicker
以获得单独的值,并根据它计算
AM
PM

public void clicker (View view)
{
    Calendar calendar = Calendar.getInstance();
    int hour = calendar.get(Calendar.HOUR_OF_DAY);
    int minute = calendar.get(Calendar.MINUTE);
    TimePickerDialog mTimePicker;
    mTimePicker = new TimePickerDialog(AddAlarm.this,
            new TimePickerDialog.OnTimeSetListener() {
                @Override
                public void onTimeSet(TimePicker timePicker,
                                      int selectedHour, int selectedMinute) {
                    Calendar calendar = Calendar.getInstance();
                    //calendar.setTimeInMillis(System.currentTimeMillis());
                    calendar.set(Calendar.HOUR_OF_DAY, selectedHour);
                    calendar.set(Calendar.MINUTE, selectedMinute);

                    int c_hour,c_min;
                    String format;
                    c_hour=selectedHour;
                    c_min=selectedMinute;

                    if (c_hour == 0) {
                        c_hour += 12;
                        format = "AM";
                    } else if (c_hour == 12) {
                        format = "PM";
                    } else if (c_hour > 12) {
                        c_hour -= 12;
                        format = "PM";
                    } else {
                        format = "AM";
                    }

                    String formatTime = String.format("%02d : %02d %s", c_hour, c_min, format);

                    TextView dimple = (TextView)findViewById(R.id.timeText);
                    dimple.setText(formatTime);
                    setAlarm(calendar);

                }
            }, hour, minute, false);// Yes 24 hour time
    mTimePicker.setTitle("Select Time");
    mTimePicker.show();

因此,您希望在服务类中显示另一个时间选择器对话框,其中包含用户选择的值。基本上,现在我的时间是字符串格式的,即服务类中的20:00(使用意图传递)。我现在只想为calendar、HOUR\u OF_DAY和calendar.MINUTE设置这个时间,它们采用整数输入。所以我需要将20:00字符串转换为2个整数20和00。请帮助我这样做。public void onTimeSet(TimePicker视图,int hourOfDay,int minute){//get hour and minute from here}从上面获取小时和分钟,并将它们传递给服务类并将它们设置为日历