我自定義了一個view,每次這個view一觸碰,就執行方法calendar.get(calendar.second);來獲取當前系統秒數,可是每一次觸碰後,在MotionEvent.action_down下,系統秒數都是第一次執行後得到的結果,這是為什麼?此方法重新執行,不理性得到最新的秒數嗎,
我覺得問題是因為,你只初始化了一次Calender calender =Calender.getInstance(),而以後都是用這個calender獲取秒數的,而對於同一個calender實例,秒數肯定一樣。就是,Calender.getInstance返回的是系統當前時間Calender的實例,但是它獲取以後是不變的,不會隨著系統時間的推移而更新,要獲取實時的實例,要在每次調用時重新獲取,即每次點擊view時都執行 calender =Calender.getInstance()才能到達你要的效果。