我正面临一个问题,我正在使用时间选择器来显示小时和分钟,用户可以在点击小时和分钟字段时更改小时和分钟值,这样它将打开android键盘输入新的小时和分钟值但是我观察到有时小时值正确更新,有时几分钟值,但是一次只有一个值正常,其他值为0.我使用timepicker.getCurrenrHour()和getCurrentMinute()方法来获取更新的值,但是两个价值都没有正确。
请帮我解决此问题。
此致 阿米特
答案 0 :(得分:1)
使用此代码:
package org.stellent.Sample;
import java.util.Calendar;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TimePicker;
public class DateandTime extends Activity implements OnClickListener{
private static final int TIME_DIALOG = 1;
Button time;
public void onCreate(Bundle state){
super.onCreate(state);
setContentView(R.layout.timeanddate);
time=(Button)findViewById(R.id.time);
time.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if(v.equals(time)){
showDialog(TIME_DIALOG);
}
}
public Dialog onCreateDialog(int id){
Calendar cal=Calendar.getInstance();
switch(id){
case TIME_DIALOG:
return new TimePickerDialog(this,timepicker,cal.get(Calendar.HOUR_OF_DAY),cal.get(Calendar.MINUTE), false);
}
return null;
}
TimePickerDialog.OnTimeSetListener timepicker=new TimePickerDialog.OnTimeSetListener(){
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
Log.e("time :",String.valueOf(hourOfDay)+" : "+String.valueOf(minute));
}
};
}