X 축에 임의로 개체를 표시하는 응용 프로그램을 만들고 있지만 시작시 응용 프로그램이 어떻게 든 충돌합니다.X 축에서 임의의 위치에 개체 설정
DisplayMetrics을 사용할 때 작동하지만 전체 화면의 너비를 가져옵니다. 너비 레이아웃을 얻고 싶습니다. 그러나 시작에 응용 프로그램 충돌 나는 레이아웃 폭을 검색하고 임의의 위치
내가 전에 TIMER 시작이 레이아웃 WIDTH를 검색 할 수있는 느낌이 설정하려고 할 때. 이 충돌하는 이유입니다
이 코드입니다 :
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
frame = (RelativeLayout) findViewById(R.id.frame);
screenWidth = frame.getWidth();
r = new Random();
timer.schedule(new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
@Override
public void run() {
goDown();
}
});
}
}, 0, 20);
//FUNCTIONS FOR IT TO GO DOWN
public void goDown() {
//LAYOUT WIDTH
frameWidth = screenWidth;
//DISPLAYING RANDOM X POSITION
newXposition = r.nextInt(frameWidth);
//SKULLS FUNCTIONS
skullY += skullSpeed;
if(skullY > frameHeight)
{
skullY = -100.0f;
skullX = newXposition - skull.getWidth();
}
skull.setX(skullX);
skull.setY(skullY);
}
을이 내 로그 캣입니다 : 사전에 어떤 도움
이E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.gin.myapplication, PID: 8786
java.lang.IllegalArgumentException: n <= 0: 0
at java.util.Random.nextInt(Random.java:182)
at com.example.gin.myapplication.MainActivity.goDown(MainActivity.java:91)
at com.example.gin.myapplication.MainActivity$1$1.run(MainActivity.java:74)
감사합니다! : D
를 연결합니다()? – Elinor
@Elinor 미안 나는 그것을 잊어 버렸다. 정말 고맙습니다. haha –