슬라이드 쇼 기능을 구현하려고 하고 있습니다.

뷰 간에 전환을 하는 방법에 대해 질문드립니다.

SDK의 ViewFlipper 와 ViewSwitcher 를 이용하여 각각 두개의 예제를 만들어 보았습니다.

스크린에 버튼을 달아서 버튼을 클릭하면 슬라이드를 변경하도록 하는 것 까지는 구현이 되었습니다.

일정 시간 후 자동으로 슬라이드가 변경되도록 하고 싶은데 어떻게 해야 할지 잘 모르겠네요.;;;;

버튼을 이용한 방법으로는 이미지 파일을 배열 (혹은 ArrayList)에 저장해 놓고 루프를 돌며,

button.setOnClickListener(new View.OnClickListener(){
            public void onClick(View v){
                mSwitcher.setImageResource(images[i]);
            }
        });

위와 같은 식으로 구현하였습니다.

ViewFlipper의 경우에는 showNext()를 사용하였구요;

ViewFlipper 클래스의 경우 startFlipping() 메소드를 제공해주고 있어서 편리할거라 생각했는데, 마지막 이미지까지 변환된뒤에

처음 이미지로 돌아와서 계속 반복되네요(슬라이드쇼가 끝나면 마지막 슬라이드의 이미지에서 멈춰있도록 하고 싶습니다.)

다른 방법으로는 루프에서

for(int i=0; i<images.length;i++){
   mSwitcher.setImageResource(images[i]);
   Thread.sleep(duration);
}

이런 식으로 했는데 이미지가 나타나지 않다가 루프를 다 돈후에 마지막 슬라이드에서만 나오네요.;;

이를 해결할 수 있는 방법, 혹은 startFlipping() 메서드를 루프의 마지막에 멈추도록 할 수 있는 방법이 없을까요?