Android 在不显示时间选择器对话框的情况下获取时间选择器值

Android 在不显示时间选择器对话框的情况下获取时间选择器值,android,button,layout,timepicker,Android,Button,Layout,Timepicker,如何在不显示timePicker对话框的情况下获取选定的时间值 下图是我的报警设计布局。单击按钮时,我希望它显示选定的值,而不是弹出的计时器对话框。 alarm.setOnClickListener(新视图.OnClickListener(){ @凌驾 公共void onClick(视图v){ showDialog(时间对话框ID); } }); } @凌驾 受保护的对话框onCreateDialog(int id){ 开关(id){ 案例时间\u对话框\u ID: //将时间选择器设置为当前

如何在不显示
timePicker
对话框的情况下获取选定的时间值

下图是我的报警设计布局。单击按钮时,我希望它显示选定的值,而不是弹出的计时器对话框。

alarm.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
showDialog(时间对话框ID);
}
});
}
@凌驾
受保护的对话框onCreateDialog(int id){
开关(id){
案例时间\u对话框\u ID:
//将时间选择器设置为当前时间
返回新的TimePickerDialog(此,timePickerListener,小时,分钟,
假);
}
返回null;
}
私有TimePickerDialog.OnTimeSetListener timePickerListener=新TimePickerDialog.OnTimeSetListener(){
@凌驾
时间集上的公共void(时间选择器视图,整数小时日,整数分钟){
//TODO自动生成的方法存根
小时=小时/天;
分钟=分钟;
更新时间(小时、分钟);
}
};
//用于使用AM/PM值将24小时格式转换为12小时格式
私有void更新时间(整数小时,整数分钟){
字符串时间集=”;
如果(小时数>12){
小时数-=12;
timeSet=“PM”;
}否则,如果(小时==0){
小时数+=12;
timeSet=“AM”;
}否则,如果(小时==12)
timeSet=“PM”;
其他的
timeSet=“AM”;
字符串分钟数=”;
如果(分钟<10)
分钟=“0”+分钟;
其他的
分钟=字符串.valueOf(分钟);
//在StringBuilder中追加
String aTime=new StringBuilder().append(小时).append(“:”)
.append(分钟).append(“”).append(时间集).toString();
Toast.makeText(getApplicationContext(),aTime,Toast.LENGTH_LONG.show();
}
}

我应该在哪里更改按钮单击?谢谢

内部按钮单击,删除

showDialog(时间对话框ID)并替换为

int hour = alarmTimePicker.getCurrentHour();
int min = alarmTimePicker.getCurrentMinute();
updateTime(hour,min); 
alarmTimePicker位于用来初始化
timePicker
timePicker
名称之后

例如:

删除下面的代码,因为不需要对话框

@Override
    protected Dialog onCreateDialog(int id) {
        switch (id) {
            case TIME_DIALOG_ID:

                // set time picker as current time
                return new TimePickerDialog(this, timePickerListener, hour, minute,
                        false);
        }
        return null;
    }

    private TimePickerDialog.OnTimeSetListener timePickerListener = new TimePickerDialog.OnTimeSetListener() {

        @Override
        public void onTimeSet(TimePicker view, int hourOfDay, int minutes) {
            // TODO Auto-generated method stub
            hour   = hourOfDay;
            minute = minutes;
            updateTime(hour,minute);
        }
    };

内部按钮单击,删除

showDialog(时间对话框ID)并替换为

int hour = alarmTimePicker.getCurrentHour();
int min = alarmTimePicker.getCurrentMinute();
updateTime(hour,min); 
alarmTimePicker位于用来初始化
timePicker
timePicker
名称之后

例如:

删除下面的代码,因为不需要对话框

@Override
    protected Dialog onCreateDialog(int id) {
        switch (id) {
            case TIME_DIALOG_ID:

                // set time picker as current time
                return new TimePickerDialog(this, timePickerListener, hour, minute,
                        false);
        }
        return null;
    }

    private TimePickerDialog.OnTimeSetListener timePickerListener = new TimePickerDialog.OnTimeSetListener() {

        @Override
        public void onTimeSet(TimePicker view, int hourOfDay, int minutes) {
            // TODO Auto-generated method stub
            hour   = hourOfDay;
            minute = minutes;
            updateTime(hour,minute);
        }
    };