Android中为何获取系统时间的方法多次执行后时间仍不变,解决方法

本文探讨了自定义Android View中使用Calendar获取系统秒数时遇到的问题,并提供了两种解决方案:一是通过创建新线程定时获取系统当前毫秒数;二是每次使用Calendar前重新实例化以确保获取最新时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:我自定义了一个view,每次这个view一触碰,就执行方法calendar.get(calendar.second);来获取当前系统秒数,可是每一次触碰后,在MotionEvent.action_down下,系统秒数都是第一次执行后得到的结果,这是为什么?此方法重新执行,不理性得到最新的秒数吗


解决办法:1.先写在一个线程当中每隔一段时间获取时间毫秒数,用System.currentTimeMillis();也可以获取
new Thread(){
run(){
while(true){
System.currentTimeMillis();
Thread.sleep();
}
};
}.start();
2.Calender calender =Calender.getInstance()
每次用都要重新获取一次。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值