2011-04-11 6 views
7

두 이미지를 표시하고 각 이미지 사이에 지연을 추가하고 싶습니다. 코드에서 오류가 발생했지만 어떤 이유로 앱이 다운됩니다.처리기를 사용한 안드로이드 지연

Bitmap bitmap = BitmapFactory.decodeFile(imageIn); 
    ImageView myImageView = (ImageView)findViewById(R.id.imageview); 
    myImageView.setImageBitmap(bitmap); 
    // Those are the only 2 lines I used to make my handler 
    Handler handlerTimer = new Handler(); 
    handlerTimer.postDelayed((Runnable) this, 20000); 

답변

34

당신이 게시 된 조각을 호스팅 어떤 클래스 말을하지 않습니다,하지만 난 handlerTimer.postDelayed((Runnable) this, 20000); 잘 될 가능성라고 생각합니다.

handlerTimer.postDelayed(new Runnable(){ 
     public void run() { 
      // do something    
     }}, 20000); 

또 다른 것은, logcat 출력이 충돌의 원인이 무엇인지에 대한 단서를 얻기를위한 매우 유용과 같은 익명 Runnable 객체를 추가

보십시오. http://developer.android.com/guide/developing/tools/logcat.html

+0

"this"가 무엇이든, Runnable을 구현한다면, 그가하는 것처럼 아무런 문제가 없습니다. – Vlad

+0

또한 : Looper.prepare에 대한 호출을 막으려면 다음과 같이 handleTimer를 만들 수 있습니다. handleTimer = new Handler (Looper.getMainLooper()); – Tobliug