我正在尝试建立活动日历。每个事件都有一个日期,然后有一个开始时间。
我构建它的方式是,一旦用户选择一个日期,我就会获得该日期的基本时间戳,然后当他们选择小时和分钟时,我会在时间戳中添加适当的毫秒数来更改时间戳。< / p>
由于某种原因,我真的不明白,所有的值都很好,但它们并没有加在一起。没有错误,基本时间戳记值保持不变。
因此,在上一个操作中,我得到了基本的时间戳记,该时间戳记可以正常工作,然后使用此代码添加毫秒数。
startTime.setOnTimeChangedListener { _, hourOfDay, minute ->
if (baseMillis != null) {
startDate =
baseMillis!! + (hourOfDay.toLong() * 3600000) + (minute.toLong() * 60000)
Log.d("timeestart", hourOfDay.toString())
Log.d("timeestart", minute.toString())
Log.d("timeestart", baseMillis.toString())
Log.d("timeestart", (hourOfDay.toLong() * 3600000).toString())
Log.d("timeestart", (minute.toLong() * 60000).toString())
Log.d("timeestart", (baseMillis!! + (hourOfDay.toLong() * 3600000) + (minute.toLong() * 60000)).toString())
Log.d("timeestart", startDate.toString())
}
}
这就是我要打印的内容:
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 9
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 55
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 1568670922872
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 32400000
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 3300000
2019-09-17 08:55:37.568 8080-8080/com.republicera D/timeestart: 1568706622872
您可以在日志3、4和5中清楚地看到这些变量中的每个变量的值都大于0,所以为什么当我尝试将它们相加时,该值仍保持原始值?