2015-02-05 2 views
0

내 토스트를 보여주는에 디스플레이 지연을 극복하는 방법, 어떻게타이머 초 동기화되지 토스트마다 두 번째

로 mToast 정의,

CountDownTimer timer = new CountDownTimer(20000, 1000) { 
             @Override 
             public void onTick(long millisUntilFinished) { 
              Toast.makeText(getApplicationContext(), "Disabling Password, Please wait : " + millisUntilFinished/1000, Toast.LENGTH_SHORT).show(); 
             } 

             @Override 
             public void onFinish() { 
              Log.d("Admin", "Disabling Password"); 
              devicePolicyManager.setPasswordQuality(demoDeviceAdmin,DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED); 
              devicePolicyManager.setPasswordMinimumLength(demoDeviceAdmin, 0); 
              boolean resulttwo = devicePolicyManager.resetPassword("", DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY); 
              Log.d("Admin", "Disabling Password : " + resulttwo); 
              Toast.makeText(getApplicationContext(), "Congratulations!! Password Disabled", Toast.LENGTH_SHORT).show(); 
             } 
           }.start(); 

답변

2

토스트가 취소 방법을 제공하는 디스플레이 지연을 극복하기 위해 데이터 멤버 및 null로 초기화

CountDownTimer timer = new CountDownTimer(20000, 1000) { 
     @Override 
     public void onTick(long millisUntilFinished) { 
      if (mToast != null) { 
       mToast.cancel(); 
      } 
      mToast = Toast.makeText(getApplicationContext(), "Disabling Password, Please wait : " + millisUntilFinished/1000, Toast.LENGTH_SHORT); 
      mToast.show(); 
      Log.d("Admin", "Disabling Password, Please wait : " + millisUntilFinished/1000); 
     } 

     @Override 
     public void onFinish() { 
      Log.d("Admin", "Disabling Password"); 
      devicePolicyManager.setPasswordQuality(demoDeviceAdmin,DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED); 
      devicePolicyManager.setPasswordMinimumLength(demoDeviceAdmin, 0); 
      boolean resulttwo = devicePolicyManager.resetPassword("", DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY); 
      Log.d("Admin", "Disabling Password : "); 
      if (mToast != null) { 
       mToast.cancel(); 
      } 
      mToast = Toast.makeText(getApplicationContext(), "Congratulations!! Password Disabled", Toast.LENGTH_SHORT); 
      mToast.show(); 
     } 
    }.start(); 
+1

감사합니다. Yajnesh, 도움이되었습니다. – user45678

+0

Thnks it worked –

관련 문제