Android 용 Pairs의 간단한 게임을 만들려고합니다.앱 시작시 모든 이미지 미리로드
는 프로그램 구조가
는 (메뉴에 의해 시작 게임 활동)Menu.java (초기로드 메뉴 활동)
Game.java
GameThread.java (gameloop, 통화 GameView의 과정을 렌더링 핸들들의 )
GameView.java는()) 화면에
Graphics.java (저장로드 이미지를 모든 그리기를 처리
문제점
문제는 15 개 카드 세트를 애니메이션하는 데 필요한 많은 이미지가 같이 게임 활동을 위해 내가 필요한 모든 비트 맵을로드하면 2 초 정도 소요됩니다. 메뉴와 게임 활동 사이의 큰 로딩 시간을 피하기 위해 나는 그래픽 클래스에 필요한 모든 비트 맵을 미리로드하고, 응용 프로그램이 처음 시작될 때 새 스레드에서 (메뉴 작업), 로딩 애니메이션을 표시하는 방법을 생각했습니다 .
다음으로 Menu 활동에서 Graphics 활동을 Game 활동으로 전달할 수 없으므로 Menu 활동에서 정적 개체로 만들어야합니다 (Menu.graphics 사용). ..). 이것은 그것을하는 끔찍한 방법입니까? 나는 항상 정적 객체를 사용하는 것이 좋지 않다고 생각했다. 다른 옵션은 무엇입니까?
미리 도움을 주셔서 감사합니다.
감사합니다. AsyncTask가 유용합니다. 다른 액티비티의 미리로드 된 리소스를 사용하는 경우 Graphics 객체를 정적으로 저장하도록 허용 할 수 있습니까? 아니면 액티비티간에 Graphics 객체를 전달할 수 없기 때문에 더 좋은 방법이 있습니까? – woodstock365
예, 정적 변수는 완벽하게 허용됩니다. –
감사합니다. 내 이미지를 저장하는 가장 좋은 방법을 물어 볼 수 있습니까? R.drawable.someAsset을 가리 키기 위해 배열을 사용한다면 실제로 이미지가 아닌 포인터를 저장하는 것입니다. 비트 맵에 이미지를 모두로드해야합니까? 또한 xml 레이아웃에있는 imageViews에 사용되는 리소스가 어떻게 만들어 지므로 xml 레이아웃이 새 인스턴스를로드하는 대신 이미로드 된 리소스를 가져 오게할까요? 코드를 통해 동적으로 이미지를 추가해야합니까, 아니면 XML의 싱글 톤에서 이미지를 참조 할 수 있습니까? – ThePerson