2013-04-09 4 views
0

나는 터치를 통해 화면에서 물건을 드래그 앤 드롭하는 게임을하고 있습니다. 나는 SurfaceView을 사용하여 이것을하고 있습니다.동시에 여러 애니메이션을 어떻게 실행할 수 있습니까?

가끔은 사용자가 게임을하는 동안 객체를 움직이려면 애니메이션을 만들어야합니다. 이 두 애니메이션이 하나씩 실행됩니다

//raise it 
m = new MyLinearMoveAnimation(container1, Config.AXIS_Y, topLine, 2*Speed); 
t = new Thread(m); 
t.start(); 
while(delivering); 
try {t.join();} catch (InterruptedException e1) {e1.printStackTrace();} 
while(t.isAlive()); 

//move to destination column 
m = new MyLinearMoveAnimation(container2, Config.AXIS_X, Config.IMAGE_X, 2*Speed); 
t = new Thread(m); 
t.start(); 
while(delivering); 
try {t.join();} catch (InterruptedException e1) {e1.printStackTrace();} 
while(t.isAlive()); 

:

이 내 코드입니다. 나는 그들 모두가 동시에 달리고 싶다. 어떻게해야합니까? 당신이 differents의 비동기 작업에서 애니메이션을 시작하면

+0

http://developer.android.com/reference/java/util/concurrent/Executor.html – Raghunandan

+0

while (전달)으로 "상위"스레드를 차단하고 있기 때문에 이들이 서로 실행됩니다. 및 while (t.isAlive()); – damian

+0

그래서 immediatly 후에 스레드에 join() 할 수 있습니까? 스레드가 실행을 끝내서 join()을 호출 할 때까지 기다릴 것입니까? 아니면 그냥 지울 수 있을까요? – Aziz

답변

-1

당신은 그들이 동일한에서 실행거야, 당신은 같은 시간에의 differents 작업을 실행할 수있는 비동기 작업에 안드로이드

http://developer.android.com/reference/android/os/AsyncTask.html

감사에서 비동기 작업을 사용할 수 있습니다 길들이기

+1

그 이유는 무엇입니까? 그/그녀가 그것을 아주 잘 이해할 수 있도록 더 자세한 내용을 포함하십시오. –

+0

감사합니다. 나는 runnables를 가진 해결책을 찾아 내지 않으면이 tomorow를 시도 할 것이다. – Aziz

관련 문제