나는 안드로이드 개발에 매우 익숙하며 비트 단위로 이해하려고 노력 중이다!Android - 애니메이션 종료시 동작 완료?
스플래시 화면을 구현하려고하는데 다음 활동으로 전환하기 전에 애니메이션을 수행하고 싶습니다. 나는
public class SplashActivity extends Activity {
// THREAD TO PROCESS SPLASH SCREEN
private Thread splashThread;
// ANIMATION END FIELD
private boolean ANIMATION_END;
// CALLED WHEN ACTIVITY IS FIRST CREATED
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// SET THE SPLASH SCREEN XML LAYOUT
setContentView(R.layout.splash);
// GET THE SPLASH IMAGE
final ImageView logo = (ImageView) findViewById(R.id.splash_logo);
// LOAD START ANIMATION FOR SPLASH IMAGE
final Animation slideIn = AnimationUtils.loadAnimation(this, R.anim.slide_in_right);
// START ANIMATE SPLASH LOGO
logo.startAnimation(slideIn);
// END ANIMATION SPLASH LOGO
final Animation slideOut = AnimationUtils.loadAnimation(this, R.anim.slide_out_left);
// SET EVENT LISTENER FOR ANIMATION TO FINISH
slideOut.setAnimationListener(new Animation.AnimationListener(){
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
ANIMATION_END = true;
}
});
// SET SPLASHSCREEN THREAD
splashThread = new Thread() {
@Override
public void run() {
try {
synchronized(this) {
// DURATION OF SPLASH SCREEN
wait(4000);
}
} catch (InterruptedException e) {
}
logo.startAnimation(slideOut);
// IF ANIMATION HAS ENDED
if (ANIMATION_END == true) {
finish();
// SWITCH FROM SPLASH ACTIVITY TO MENU ACTIVITY
startActivity(new Intent(SplashActivity.this, MenuActivity.class));
}
}
};
// RUN THE SPLASH THREAD
splashThread.start();
}
// SPLASH SCREEN TOUCH EVENTS
@Override
public boolean onTouchEvent(MotionEvent event) {
// USER TOUCHES SPLASH SCREEN
if (event.getAction() == MotionEvent.ACTION_DOWN) {
synchronized(splashThread) {
// MAKE SPLASH SCREEN END
splashThread.notifyAll();
}
}
return true;
}
}
은 아마 내가 아는 가장 좋은 코드가 아니라 내가,이 내가 뭘하려 ... 간다 여기에 한 두 시간을 알아 내려고하지만이 사이트를 우연히 발견했다, 그래서 한 견딜 수 없는. 로고 슬라이드가 전환 된 후 갑자기 종료되면 MenuActivity
모두에게 감사드립니다!
멋진 답변을 드리겠습니다. –