2017-04-07 90 views
-2

在我的應用程序中,我試圖創建一個「加載屏幕」,以便用戶知道發生了什麼,並且在發佈後加載新視圖時不認爲該應用程序滯後按鈕。我試圖讓我的「setViewVisibility」方法在代碼的其餘部分之前運行,但我似乎無法使其工作。我現在設置的方式是,有一個實例布爾值,當一個動作完成時被更改,但由於某種原因,它不起作用。關於如何解決這個問題的任何想法?如何在別的東西之前強制發生某些事情JAVA

if(isLoadScreen == true){ 
    setViewVisibility(visibility.END); 
    buttoni.setAlpha((float) 1); 
    isLoadScreen = false; 
} 

if (isLoadScreen == false){ 
    setKeysList(list); 
    startQuestion(keysList.get(0)); 
    currentQuestion = 0; 
    isLoadScreen = true; 
} 
+0

似乎你需要一個[閃屏](http://stackoverflow.com/questions/22599508/how-do-i-show-a-splash-screen-in-android/22599557#22599557) – Onik

+1

'if (isLoadScreen == false)'將'boolean'與'boolean'進行比較以得到一個'boolean',這是冗餘重複和多餘的。 –

回答

0

你的第二塊總是被執行,因爲isLoadScreen總是在這一點虛假。您需要使用else而不是if來獲得所需的行爲。

if (isLoadScreen == false){ //isLoadScreen is always false here - just use else instead 
    setKeysList(list); 
    startQuestion(keysList.get(0)); 
    currentQuestion = 0; 
    isLoadScreen = true; 
} 

這就是說,有更好的方法來創建飛濺/加載屏幕 - 這個問題How do I make a splash screen?可能會提供一些線索。

+0

@JawadLeWywadi你是什麼意思?我只是指出,在評估OPs代碼中第二個「if」的條件時,「isLoadScreen」總是正確的 - 你認爲我錯了嗎? – Hulk

+0

@JawadLeWywadi我同意它應該被關閉 - 原因是(對我來說)它是由與這個問題無關的微不足道的錯誤引起的。我可能會在評論中指出這個微不足道的錯誤,但我選擇了答案。 – Hulk

相關問題