2017-07-18 25 views
-1

我想在特定時間更改倒計時器的顏色。例如,50秒後,顏色變成黃色,請你幫忙嗎?在這裏,你可以檢查我的代碼。直到50秒好,顏色是綠色的。但是,第50秒後,應用程序崩潰。更改倒計時器的顏色

 final CountDownTimer countDownTimer = new CountDownTimer(60000, 1000) 
     { 

     public void onTick(long millisUntilFinished) { 
      x = millisUntilFinished/1000; 
      timer.setText(x + " remaining left "); 
      if (50< x){ 
       timer.setTextColor(Color.parseColor("#32e76b")); 

      } 
      else{ 
       timer.setTextColor(Color.parseColor("FFE9DD33")); 

      } 
+0

'應用crashes'顯示崩潰日誌 –

回答

-1

嘗試創建一個colors.xml文件中值這樣的文件夾:

<?xml version="1.0" encoding="utf-8"?> 

<resources> 

    <color name="green">#32e76b</color> 

    <color name="yellow">yor_yellow_color_code</color> 

    <color name="red">yor_red_color_code</color> 

</resources> 

而且這樣設置:

final CountDownTimer countDownTimer = new CountDownTimer(60000, 1000) 
     { 

     public void onTick(long millisUntilFinished) { 
      x = millisUntilFinished/1000; 
      timer.setText(x + " remaining left "); 
      if (50< x){ 
       timer.setTextColor(ContextCompat.getColor(your_context,R.color.green)} 
      else{ 
       timer.setTextColor(ContextCompat.getColor(your_context,R.color.yellow); 

      } 
+0

很抱歉,但我不能看到任何區別 –

+0

@aliihsanGokalp我與我的新的方式回答更新,檢查是否幫你 –

0

使用這樣

ContextCompat.getColor(context, R.color.your_color); 

嘗試檢查this

0

您的顏色表示是AARRGGBB,但應該是#AARRGGBB,您錯過了以您的顏色顯示,因此它會拋出IllegalArgumentException異常。

所以改變這樣的,

timer.setTextColor(Color.parseColor("#FFE9DD33")); 
+0

啊,謝謝你,我的朋友 。這是我的錯誤:( –