[英]Set FrameLayout to visible on button click
我正在嘗試創建一個應用程序,該應用程序允許在單擊按鈕時一次顯示多個FrameLayout。
目前,我的代碼是:
int count = 0;
if(count == 0 && view.isEnabled()) {
FrameLayout addActivities = (FrameLayout)findViewById(R.id.frameLayout2);
addActivities.setVisibility(View.VISIBLE);
count++;
}
if (count == 1 && view.isEnabled()) {
FrameLayout addActivities2 = (FrameLayout)findViewById(R.id.frameLayout3);
addActivities2.setVisibility(View.VISIBLE);
count++;
}
if(count == 2 && view.isEnabled()) {
FrameLayout addActivities3 = (FrameLayout)findViewById(R.id.frameLayout4);
addActivities3.setVisibility(View.VISIBLE);
}
當我單擊按鈕時,這基本上將使3 FrameLayouts可見,這是顯而易見的。 我基本上希望每個FrameLayout一次出現一次,即,一次單擊按鈕將生成frameLayout2,再次單擊按鈕frameLayout3,最后單擊一次frameLayout4。
謝謝你的幫助!
你應該...
A)反轉if語句的順序,或B)改為使用switch語句進行計數(更好的方式)
基本上,您正在調用所有的if語句,因為當計數增加時,您不會脫離任何循環。
將count
更改為成員,如果count
達到3,則最終將其重置。然后,將if添加為else,如下所示:
if (count == 0 && ...) {
...
} else if (count == 1 && ...) {
...
} else if (count == 2 && ... ) {
...
}
您可能希望在每個if塊中將一個FrameLayout
設置為View.VISIBLE
,將另外兩個設置為View.GONE
,具體取決於您要實現的效果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.