마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

스플래쉬 화면 띄울려고 합니다.

0 추천

스플래쉬 화면 띄울려고 합니다. 근데 저는 스플래쉬 화면을 3초만 띄울려고 하는데요.

실제로 실행하면 1초도 안되서 스플래쉬 화면이 꺼집니다. 아래소스는 3초로 설정했는데요.

왜그런걸까요.  어떤 부분을 수정해야 3초간 스플래쉬 화면이 유지될까요. ㅠ

 

public class SplashActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
 
Handler handler = new Handler() {
 @Override
 public void handleMessage(Message msg) {
 finish();
 }
 };
 handler.sendEmptyMessageDelayed(0, 3000);
}
 
}
마귀 (180 포인트) 님이 2014년 1월 20일 질문

2개의 답변

0 추천

메세지를 지연시키지 마시고 핸들러를 지연시키시는게 어떠신지요?

private void moveActivity() {
 Handler handle = new Handler();
 handle.postDelayed(new Runnable() {
     @Override
     public void run() {
  Intent intent = new Intent(IntroActivity.this,
   CodeActivity_.class);
  intent.putExtra("autologin", false);
  IntroActivity.this.finish();
  IntroActivity.this.startActivity(intent);
     }
 }, 3000);
    }



 

샤이닝고 (560 포인트) 님이 2014년 1월 20일 답변
제공해주신 소스는 어떻게 활용해야 할지 모르겠네요. ㅠ
0 추천
올려두신 소스 그대로 복사해서 테스트 했을 때 이상없이 3초후에 종료됩니다.

혹시 다른 요인으로 인한것은 아닌지 살펴보시기 바랍니다.
Gradler (109,780 포인트) 님이 2014년 1월 20일 답변
답변 감사합니다.
제가 집에서 베가lte-m으로 usb연결해서 테스트중인데요.
지연시간을 5초로 하고 10초 해도 폰에서는 1초도 안되서
스플래쉬화면이 없어지더라고요. 폰의 특성일까요 ㅠ
아뇨 저 코드는 폰 특성 타고 말고 할 것도 없습니다;;
따로 프로젝트 만들고 위 코드만 넣고 finish 대신 토스트 띄우게 해서 테스트 해보세요
...