나는 "안드로이드 게임 프로그래밍 예"라는 책을 통해 Kotlin을 배우려고합니다. 이제 더 이상 스레드를 만들 수 없습니다. Java에서 스레드는 먼저 0으로 정의되고 나중에 sleep()으로 지연됩니다. 나는 아직 신참이기 때문에 원하는대로 코드를 사용자 정의 할 수 없습니다. 그것이 내가 Kotlin의 스레드에 대한 설명을 찾은 방법입니다. 그러나 나는 그것을 실천할 수 없다. 누군가가 내 예제를 사용하여이 작업을 수행하는 방법을 알려 줄 수 있습니까? 스레드에 대한 코드 줄을 자릅니다.자바 스레드를 Kotlin으로 변환
public class TDView extends SurfaceView implements Runnable {
//Thread related
volatile boolean playing;
Thread gameThread = null; //Line 29
...
private void control() {
try {
gameThread.sleep(17); //Line 310
} catch (InterruptedException e) {
//catch things here
}
}
public void pause() {
playing = false;
try {
gameThread.join(); //Line 319
} catch (InterruptedException e) {
//catch things here
}
}
public void resume() {
playing = true;
gameThread = new Thread(this); //Line 327
gameThread.start();
}
전체 코드는 here입니다.
private val gameThread: Thread? = null
.
//Line 310 same as Java -- here I can't find the sleep-method
//Line 319 same as Java
.
gameThread? = Thread(this)
gameThread.start()
P.S.을 :
은 내가 이런 식으로 그것을 할 줄 알았는데 나는 this 기사를 읽었습니다,하지만 난에 맞게하는 방법을 모르겠어요.
특정 섹션을 건너 뛰지 말고 전체 Kotlin 코드를 게시하는 것이 더 쉬울 것이라고 생각합니다. 내가 뭘 하려는지 볼 수는 있지만 전체 코드가 더 도움이 될 것입니다. – Michael
정확히 무엇이 문제입니까? 나를 위해 명확하지 않습니다. – AxelH
kotlin에서 올바른 코드를 작성하는 법을 알고 싶습니다. 너와 왜 어땠 을까? @Michael 여기 내 코드 (https://gist.github.com/willhoh/9c6e8bc18983f86af3e6e0e2aa1fd499) – WillHoh