2014-05-21 5 views
0

나는 EditText (et) 및 버튼 (bt)이 있습니다. BT를 누르면 배경색이 녹색으로 바뀌고 1 초 후에 흰색이 나타납니다.Android 변경 edittext 배경

bt.setOnClickListener(new Button.OnClickListener(){ 
     @Override 
     public void onClick(View view){ 
      answer.setBackgroundColor(Color.parseColor("#00FF00")); 
      try{ 
       Thread.sleep(1000); 
      }catch(InterruptedException e){} 
      answer.setBackgroundColor(Color.parseColor("#FFFFFF")); 
     } 
    }); 

내가 발견 등의 색상 코드가 완전히 실행될 경우에만 변경한다는 것입니다 문제는, 메소드가 호출되지 : 내 코드는 다음과 같은 것입니다! 즉, 녹색으로의 변화는 결코 일어나지 않으므로 et는 항상 흰색입니다. 해당 코드의 대안이 있습니까? 대단히 감사드립니다.

+0

시도? 작동합니까? 1 초 안에 또 다른 액션을 시작하기 위해'handler.postdelayed (runnable, 1000)'을 가진 실행 파일을 시작하십시오! Thread.sleep을 절대 사용하면 안된다! –

답변

2

이 시도 만 녹색으로 설정을

bt.setOnClickListener(new Button.OnClickListener(){ 
            @Override 
            public void onClick(View view){ 
             answer.setBackgroundColor(Color.parseColor("#00FF00")); 
             new Handler().postDelayed(new Runnable() { 

              @Override 
              public void run() { 
               // TODO Auto-generated method stub 
                answer.setBackgroundColor(Color.parseColor("#FFFFFF")); 
              } 
             }, 1000); 
            } 
           }); 
+0

이제 작동합니다! 대단히 고마워, 나는이 문제에 몇 시간을 보냈다! – user3503550