2013-12-23 53 views

回答

6

您可以像這樣遞歸地禁用所有視圖。 只是通過的佈局視圖的方法:

private void enableViews(View v, boolean enabled) { 
    if (v instanceof ViewGroup) { 
     ViewGroup vg = (ViewGroup) v; 
     for (int i = 0;i<vg.getChildCount();i++) { 
      enableViews(vg.getChildAt(i), enabled); 
     } 
    } 
    v.setEnabled(enabled); 
} 

只要運行enableViews(view, false)禁用,或enableViews(view, true)再次啓用。

+0

由此我可以禁用我的觀點在行動。我可以通過使用setEnabled(true)而不是setEnabled(false)爲最初禁用的視圖啓用一些監聽器的視圖。 –

+0

當然,我更新了答案更加靈活。 – flx

+0

這工作正常..偉大的工作flx –

1

使用後在你的XML佈局屬性(作爲例子的TextView)在按鈕單擊事件

android:visibility="gone" 

myText.setVisible(myText.VISIBLE) 

你可以使用它們一個接一個,或者你可以把所有不可見的內容在一個佈局中隱藏佈局。那麼一旦你想展示他們,只要看到佈局。然後全部將顯示

需要更多評論..只是評論。

+0

thanks.this作品。但它使我的佈局在一開始就不可見,並可以恢復原狀。我可以做什麼像禁用我的佈局,而它是可見的。 –

+0

非常感謝。我認爲會有一種內在的方式。 –

+0

感謝您的看法。我可以通過使用顏色使禁用更具交互性。非常感謝。 –