2011-10-08 6 views
5

Je fais une application dans laquelle je veux changer le texte de textviews à partir d'un tableau de chaînes. Pour cela, j'ai besoin de faire le tableau de textviews.Comment faire ça ?? Quelqu'un peut-il me aider sur ceAndroid: tableau de textviews

Répondre

22

Vous pouvez créer TextViews comme ceci:

int textViewCount = 10; 

TextView[] textViewArray = new TextView[textViewCount]; 

for(int i = 0; i < textViewCount; i++) { 
    textViewArray[i] = new TextView(this); 
} 
2

Peut-être son utile i utiliser le tableau de bouton donc je suis Güssing travail textview comme ça:

TextView[ ][ ] _txt; 

_txt = new TextView[_dimension][_dimension]; // _dimension = 5 what you want 
_txt[0][0] = (TextView) findViewById(R.id.text1); 
_txt[0][1] = (TextView) findViewById(R.id.text2); 

et plus ...

+0

pourquoi u prendre tableau 2d dans ce domaine? – ekjyot

+0

C'était mon exigence afin que vous puissiez utiliser un seul tableau au lieu de 2d –

2

Si vous voulez un grand nombre de textviews, dans ce cas, pour éviter OutofBound utilisation d'exception code suivant

LinearLayout parent = new LinearLayout(this); 
     TextView textView; 
     for(i = 0; i < count; i++) { 
      textView = new TextView(this); 
      textView.setTag(""+i);// setting tag with index i 
      parent.addView(textView); 
     } 
     int len=parent.getChildCount(); 
     int j = 0; 
     int requiredPosition = 5; 
     while(j<len) { 
      TextView tempTextView =((TextView)parent.getChildAt(i)); 
      if(tempTextView.getTag().equals(""+requiredPosition)){ 
       //Perform required operation 
       //tempTextView.setText(""); 
      } 
      j++; 
     } 
1

Vous pouvez faire parvenir avec quelque chose comme ceci:

int textvwCount = 20;//number of textview you want to use in an array 

TextView[] arrTxtView = new TextView[textvwCount ]; // declare and assign array length of text views. 

for(int i = 0; i < textViewCount; i++) { // iterate over all array items and assign them text. 
    Textview txtCnt = new TextView(this); 
txtCnt .settext(i); 
textViewArray[i] =txtCnt ; 
} 
Questions connexes