2012-05-03 3 views
2

내 안드로이드 프로그램에서 사용하고 있습니다. 두 번째 또는 그 이상 기다리는 실타래 가끔은 라이트와 가끔 대기하지 않습니다. 그래서 기다리는 또 다른 방법이 있습니다. 몇 초?안드로이드 앱 대기 중

Thread logotimer = new Thread(){ 
    public void run(){ 
     try{ 
      sleep(1500); 
      Intent leveloverview = new Intent("com.technopolisapp.FROGLEVEL"); 
      startActivity(leveloverview); 
     } 
     catch(InterruptedException e){ 
      e.printStackTrace(); 
     } 
     finally{ 
      finish(); 
     } 
    } 
}; 

logotimer.start(); 

답변

6

대신 당신이 핸들러를 사용할 수있는 스레드 수면 개념은 ...

new Handler().postDelayed(new Runnable(){ 
    public void run() { 
     Intent leveloverview = new Intent("com.technopolisapp.FROGLEVEL"); 
     startActivity(leveloverview); 
    } 
}, 5000); 

이 코드가있을 수 있습니다 : http://developer.android.com/reference/java/util/Timer.html

다음은 타이머의 기본 구현입니다 : 여기

는 Timer 클래스의 당신에게 도움이 ...

+0

나는이 메서드를 tryed하지만 여전히 문제가 발생했다 : 호출하지 않은 스레드 안에 핸들러를 생성 할 수 없다. Looper.prepare(). 그런 다음 Looper.prepare()를 추가했습니다. 그러나 문제가 발생했습니다. 스레드 당 하나의 루퍼 만 만들 수 있습니다. – stevedc

4

당신은 어떤 TimerTask를 (일명 방법) 한 번 특정 시간이 경과 지정을 실행하는 새로운 스레드를 생성하는 타이머 클래스를 살펴 보셔야합니다. 특정 간격으로 타이머가 반복되도록 예약 할 수도 있습니다. http://steve.odyfamily.com/?p=12