모든 것이 onCreate() 메소드에서 초기화되는 동안 스플래시 화면을 표시하고 싶지만 화면에 물건을 그리는 데 필요한 구성 요소도 초기화되므로 검은 화면이 표시됩니다. 앱을 시작하고 onCreate() 메소드가 완료되면 첫 번째 화면 만 그려집니다. 검은 화면이 아니라 스플래시 화면을 원합니다.검은 화면 전에 Android 스플래시 화면
여기 내 코드에서 onCreate 방법입니다 :
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Acquire a wakeLock to prevent the phone from sleeping
PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
wakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "GLGame");
// Setup all the Game Engine components
gameEngineLog = new WSLog("WSGameEngine");
gameEngineLog.setLogType(this.gameEngineLogType);
gameLog = new WSLog(this.gameLogTAG);
gameLog.setLogType(this.gameLogType);
io = new FileIO(this, getAssets());
audio = new Audio(this);
wsScreen = new WSScreen(this, this.screenResizeType, this.customTopYGap, this.customLeftXGap, this.gameScreenWidth, this.gameScreenHeight);
graphics = new Graphics(this, wsScreen.getGameScreen(), wsScreen.getGameScreenextended());
renderView = new RenderView(this, wsScreen.getGameScreen(), wsScreen.getGameScreenextended(), FPS, maxFrameskippes);
input = new Input(this, renderView, logGameEngineInputLog);
setContentView(renderView);
if(useOfAnalytics == true) {
getGameEngineLog().w(classTAG, "Analytics has been enabled");
analytics = new Analytics(this);
}
// Check that the developer has initialized the assets
if(this.assets == null) {
this.gameEngineLog.w(classTAG, "The assets for the game haven't been defined!");
}
}
어떻게, 시작 화면을 구현해야 시작 부분에 검은 색 화면을 피하기 위해?
setContentView (R.layout.splashscreen); // 작업 수행 setContentView (view); 첫 번째 setContent보기는 아무 효과가 없습니다. –
무엇을 의미합니까? 스플래시 화면을 볼 수 없습니까? 어쩌면로드 시간이 너무 짧아서인지 할 수 없을 수도 있습니다. 이 경우에는 다른 답변에서 말한 것처럼 postDelayed 메서드를 사용해야합니다. –
나는 그것이 작동하게했다, 모두 고쳤다. onContentView는 일단 onCreate() 메서드가 완료되면 효과가 있다고 생각합니다. –