2011-03-21 5 views
3

나는 나 자신을 위해서 만든 어리석은 작은 게임을 가지고 있지만, "황금 시간대"를 위해 준비가되어 있지 않은 친구와 공유하는 것을 생각하고 있습니다. 이 게임은 4 초 안에 움직이는 사람을 포함합니다.안드로이드, 모범 사례에 대한 빠른 질문

내 게임에서 레벨이 향상 될 때마다 모든 버튼을 비활성화하고 3 ... 2 ... 1 ...과 같은 카운트 다운을 표시하고 모든 버튼이 다시 활성화되도록하고 싶습니다.

이제는 (생각할 수있는) 이것을 수행하는 두 가지 방법이 있습니다. 의도를 보내고 내가 "화려한"3,2,1 애니메이션을 가지고 있고 게임 활동으로 돌아갈 수있는 다른 활동으로 이동하십시오. ... 또는

같은 게임 화면에서 3 ... 2 ... 1.go!

추천 하시겠습니까?

그 사람을 다른 활동으로 보내면 애니메이션이 끝난 후 게임이 다시로드되고 타이머가 실행되어 게임이 실행될 시간이 줄어들어 두려운 것입니다. 그들의 움직임을 확인하십시오.

미리 감사드립니다.

답변

5

개인적으로 게임 화면에 카운트 다운을 표시해야한다고 생각합니다. 이것은 성능상의 이유로는 아니지만 단지 더 나은 사용자 경험이라고 생각하기 때문입니다. 신속하게 대응해야한다면 UI가 비활성화 된 경우에도 UI를 볼 수 있기를 바랍니다. 게임이 시작되면 완전히 다른 화면에 던져지는 것을 싫어합니다.

성능 측면에서 나는 다른 활동으로가는 것이 좋습니다. onResume() 메소드에 값 비싼 계산이 없으면 카운트 다운 활동 아래의 활동 스택에 있기 때문에 게임 화면 활동으로 돌아 오는 것이 빠르다.

ActivityGroup을 사용하면 성능을 향상시킬 수 있습니다.

+0

소리가 잘 들립니다. – Ryan

1

나는 사람들이 물론, 우리는 필요를 알고 (자신의 휴대폰에,하지만 단지 때문에 지나치게 열심 작업 살인범의 또 다른 활동으로 전환 주저 것 많은 사람들이 그들에게). 사용자가 스플래시 화면에있는 동안 작업 killer가 주 게임 활동을 중단 시키면 게임은 onCreate()를 다시 통과해야합니다. 어느 쪽이 좋지 않은가.

나는 ArrayList<Button> 같은 당신의 버튼을 유지 건의 할 것입니다 그리고 당신은 통과 할 수 있으며

for(Button button : buttonArrayList) 
    button.setClickable(false); 

말을하지만 안드로이드가 자신을 초보자, 그래서주의 내 조언을.

+0

답장을 보내 주셔서 감사합니다. ! – Ryan

관련 문제