Android timer and android Timer

Source: Internet
Author: User

Android timer and android Timer

Andorid timer encapsulation class

Public class TimerUtil {private static final String TAG = "TimerUtil"; private static Handler mTimeHandler = null; private static boolean mTimerMark = false; private static Runnable mTimerRunnable = null; private static int mUpdateTime = 0; private TimerUtil (){}; /*** start timer ** @ param doThing timer to handle tasks * @ param updateTime timer time * @ since V1.0 */public static void startTime (Runnable doThing, int UpdateTime) {if (null = doThing | updateTime <0) {return;} if (null = mTimeHandler) {mTimeHandler = new Handler (); mTimerRunnable = doThing; mUpdateTime = updateTime; mTimerMark = true;} if (mTimerMark) {mTimeHandler. postDelayed (mTimerRunnable, 0);} else {mTimeHandler. postDelayed (null, 0);}/*** start timer ** @ param doThing timer to handle tasks * @ param updateTime timer time * @ param mode Timer mode * @ si Nce V1.0 */public static void startTime (Runnable doThing, int updateTime, boolean mode) {if (null = doThing | updateTime <0) {return ;} if (null = mTimeHandler) {mTimeHandler = new Handler (); mTimerRunnable = doThing; mUpdateTime = updateTime; mTimerMark = true;} if (mTimerMark) {if (mode) {mTimeHandler. postDelayed (mTimerRunnable, 0);} else {mTimeHandler. postDelayed (mTimerRunnable, up DateTime) ;}} else {mTimeHandler. postDelayed (null, 0) ;}}/*** description of the method ** @ since V1.0 */public static void updataTime () {if (mTimerMark) {mTimeHandler. postDelayed (mTimerRunnable, mUpdateTime);} else {mTimeHandler. postDelayed (null, 0) ;}}/*** description of the method ** @ since V1.0 */public static void stopTime () {mTimerMark = false; if (null! = MTimeHandler) {mTimeHandler. removeCallbacks (mTimerRunnable); mTimeHandler = null ;}}/*** date format: yesterday, Today, July 15, August 24 * @ param ltime * @ param context * @ return * @ since V1.0 */public synchronized static String getTime_FormatTime_MMDD (long ltime, Context context) {String time = ""; Calendar dateCalendar = Calendar. getInstance (); dateCalendar. setTimeInMillis (ltime); Calendar targetCalendar = Calendar. getInstance (); targetCalendar. set (Calendar. HOUR_OF_DAY, 0); targetCalendar. set (Calendar. MINUTE, 0); if (dateCalendar. after (targetCalendar) {time = context. getString (R. string. today) + "" + time; return time;} else {targetCalendar. add (Calendar. DATE,-1); if (dateCalendar. after (targetCalendar) {time = context. getString (R. string. yesterday) + "" + time; return time;} String otherSDF = context. getString (R. string. mmdd); Date date = dateCalendar. getTime (); SimpleDateFormat sfd = new SimpleDateFormat (otherSDF); time = sfd. format (date); CLog. d (TAG, "getTime_FormatTime_MMDD time:" + time); return time;}/*** date format: yesterday, Today, July 15, August 24 * @ param ltime * @ param context * @ return * @ since V1.0 */public synchronized static String getTime_FormatTime_MMDDHHMM (long ltime, Context context) {String time = ""; Calendar dateCalendar = Calendar. getInstance (); dateCalendar. setTimeInMillis (ltime); int month = dateCalendar. get (Calendar. MONTH) + 1; int day = dateCalendar. get (Calendar. DAY_OF_MONTH); int hour = dateCalendar. get (Calendar. HOUR_OF_DAY); int minute = dateCalendar. get (Calendar. MINUTE); time = String. format ("% 02d: % 02d", hour, minute); Calendar targetCalendar = Calendar. getInstance (); targetCalendar. set (Calendar. HOUR_OF_DAY, 0); targetCalendar. set (Calendar. MINUTE, 0); if (dateCalendar. after (targetCalendar) {time = context. getString (R. string. today) + "" + time; return time;} else {targetCalendar. add (Calendar. DATE,-1); if (dateCalendar. after (targetCalendar) {time = context. getString (R. string. yesterday) + "" + time; return time ;}} time = String. format (Locale. ENGLISH, "% 02d-% 02d % 02d: % 02d", month, day, hour, minute); CLog. d (TAG, "getTime_FormatTime_MMDDHHMM time:" + time); return time;}/*** describes the method here ** @ return time format nnnn-mm-dd hh: mm: ss * @ since V1.0 */public synchronized static String getTime_nnnnyydd (long t) {if (t = 0) {return "";} Calendar cale = Calendar. getInstance (); cale. setTimeInMillis (t); int year = cale. get (Calendar. YEAR); int month = cale. get (Calendar. MONTH) + 1; int day = cale. get (Calendar. DAY_OF_MONTH); int hour = cale. get (Calendar. HOUR_OF_DAY); int minute = cale. get (Calendar. MINUTE); int second = cale. get (Calendar. SECOND); String time = String. format (Locale. ENGLISH, "% d-% 02d-% 02d % 02d: % 02d: % 02d", year, month, day, hour, minute, second); CLog. d (TAG, "getTime_nnnnyydd time:" + time); return time;}/*** describes the method here ** @ return time format nnnn-mm-dd hh: mm: ss * @ since V1.0 */public synchronized static String getTime_nnnnyydd (Calendar cale) {if (cale = null) {return "";} int year = cale. get (Calendar. YEAR); int month = cale. get (Calendar. MONTH) + 1; int day = cale. get (Calendar. DAY_OF_MONTH); int hour = cale. get (Calendar. HOUR_OF_DAY); int minute = cale. get (Calendar. MINUTE); int second = cale. get (Calendar. SECOND); String time = String. format (Locale. ENGLISH, "% d-% 02d-% 02d % 02d: % 02d: % 02d", year, month, day, hour, minute, second); CLog. d (TAG, "getTime_nnnnyydd time:" + time); return time ;}}

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.