java - 我的当前时间和我的 TimePicker 时间相差约 40.000 秒(昨天是 +46.803,今天是 -39.598 秒)
问题描述
如果它的唯一代码没有详细信息,我无法上传它,这就是我有所有评论的原因
public class Wecker extends AppCompatActivity {
TextView Alarm1;
long AlarmTime,currentTime;
int A1Stunde,A1Minute,year,month,day;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_wecker);
//timePicker for AlarmTime
Alarm1 = findViewById(R.id.Alarm1);
Alarm1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TimePickerDialog timePickerDialog = new TimePickerDialog(
Wecker.this,
new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int Stunde, int Minute) {
A1Stunde = Stunde;
A1Minute = Minute;
Calendar calendar = Calendar.getInstance();
calendar.set(0,0,0,A1Stunde,A1Minute);
Alarm1.setText(DateFormat.format("hh:mm aa",calendar));
}
},24,0,true
);
//converts the timePickerDialog time into Millis
timePickerDialog.updateTime(A1Stunde,A1Minute);
timePickerDialog.show();
Calendar c = Calendar.getInstance();
year = c.get(Calendar.YEAR);
month = c.get(Calendar.MONTH);
day = c.get(Calendar.DAY_OF_MONTH);
c.set(Calendar.HOUR, A1Stunde);
c.set(Calendar.MINUTE, A1Minute);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
AlarmTime = (c.getTimeInMillis() / 1000);
}
});
//Timer to compare the currentTime with the AlarmTime
Timer t = new Timer();
t.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
//currenTime form calendar
currentTime = Calendar.getInstance().getTimeInMillis() / 1000;
if (currentTime==AlarmTime) {
Log.e(TAG, "works");
}else{
Log.e(TAG, String.valueOf(currentTime));
Log.e(TAG, String.valueOf(AlarmTime));
}}
},0,1000);
今天,AlarmTime 的值关闭了 -39.598 秒,昨天是 +46.803 我不知道为什么会发生这种情况或如何解决它。是因为 TimeZones 还是因为 AM / PM 时间,如果是这样,它如何工作?
解决方案
推荐阅读
- wpf - WPF - 在 AllowDrop = False 时拖放期间跟踪鼠标
- ios - 如何从 Firebase Firestore 将静态 UITableView 标头加载到我的应用程序中?
- php - Jquery 文件上传进度条未重定向到 PHPMailer 处理程序文件
- react-native - 出现搜索栏,但我无法输入文本
- java - 在tomcat7中使用axis2时无法接收soap 1.2版的消息
- angular - 与 Angular 相比,为什么 Elektron 不被认为是“RESTful”?
- pytest - 参数化测试时如何通过夹具
- javascript - 动态合并数组中的对象
- python - wxPython 在 Python27 中安装
- arrays - 观察数组任何成员的任何属性的变化