2014-04-22 47 views
0

下面的代碼示例:安卓:當我把「addView(..)一個for循環,我得到error..Here內,我們去

 TableLayout ll = (TableLayout)findViewById(R.id.dyn_lyr); 

也同樣與LinearLayout中

//LinearLayout ll = (LinearLayout)findViewById(R.id.dyn_lyr); 

    TextView tv1 = (TextView) findViewById(R.id.testEditText); 
    tv1.setText("SomeTextGoesHere"); 

    for(int i=1 ; i<= 5 ; i++){ 
     ll.addView(tv1); 
      } 

中的LinearLayout /表格在ScrollView裏面!

+0

什麼是錯誤? – zmbq

+2

感謝您的考慮,您無法多次添加視圖的相同實例 –

回答

0

您應該創建TextView的動態,並添加LL ...

for(int i=1 ; i<= 5 ; i++){ 
    TextView tv1 = new TextView(getApplicationContext()); 
    tv1.setText("SomeTextGoesHere"); 
    ll.addView(tv1); 
} 
+0

完美:O ..問題解決了。其實我知道我必須在空氣中創建TextView,但是我創建了沒有「實現OnClickListener」的代碼,並且我走了這條路......我使用了新的TextView(* this *),這裏是我的混亂: http://stackoverflow.com/questions/23199133/android-draw-textedits-or-textviews-when-user-enter-number-of-them-exp-6 – SDG69

0

看起來你想要添加的孩子已經有了父母。 你能分享logcat錯誤報告嗎?

+0

,但問題已解決! – SDG69

0

有沒有足夠的信息,但我想電視1已經有一個家長。我猜你應該每次都添加新的TextView。試試這個。如果你正在使用findViewById好,然後創建全新的TextView

for(int i=1 ; i<= 5 ; i++){ 
     TextView tv1 = new TextView(this); 
     tv1.setText("SomeTextGoesHere"); 
     ll.addView(tv1); 
    } 
0

,所產生的觀點已經是佈局的一部分,具有家長。每個視圖只能添加到ViewGroup一次。您需要製作 TextViews並將其添加到您的LinearLayout。您可以通過TextView構造函數或具有單獨xml佈局的LayoutInflater來執行此操作。