2012-08-15 19 views
0

我想看看所有動態創建的按鈕,TextViews等之前(或甚至之後)setContentView()在屏幕上顯示它們。我有一個鬆散的理解,這涉及到上下文和活動,但具體而言,我不知道這些動態視圖存在於何處/它們如何在運行時放在一起。如何在活動中列出所有動態創建的視圖?

,如果他們是在運行時顯示的是有沒有辦法一一列舉?

LinearLayout layout = new LinearLayout(this); 
    layout.addView(button1); 
    layout.addView(button2); 
    layout.addView(button3); 
    setContentView(layout); 

的按鈕應該存在的地方(我很肯定他們在語境中的存在!),但沒有查找這些動態創建的視圖的方式(我發現)。 請和謝謝。

回答

1

在一般情況下,如果你將需要在屏幕上顯示這些事情,那麼你應該保持對它們的引用某個地方。這是一種常見模式,如果您動態創建按鈕,則需要將它們填入List(例如)。如果你這樣編程,你就不需要獲得所有的觀點,即使你很容易(通常在GUI中,你可以通過反思或者類似的機制),它不會被組織成任何形式邏輯結構將佈局中的事物與應用程序規定的邏輯佈局相關聯。相反,當您動態創建視圖時,將它們填入列表的某個位置,以便稍後進行迭代。