Android Riempire Vettore con ID? Android

Stato
Discussione chiusa ad ulteriori risposte.

paolo_99

Utente Bronze
27 Aprile 2016
25
12
0
38
In linguaggio è Java però si parla di programmazione di app in Android.
Mi spiego meglio io ho un vettore di bottoni:
Button array[];
lo istanzio:
array[]=Button Button[10];
E fino a qui tutto bene ma poi ho fatto una funzione per riempire questo vettore:
public void riempiVettore(){
array[0]=(Button)findViewByI(R.id.id_di_un_oggetto);
e mi chiedevo se magari ci fosse un modo di fare questa cose con un FOR per esempio:
for(int k=0;k<10;k++){
array[k]=(Button)findViewByID(R.id.qualcosa(string o non so chiedevo appunto questo));
}


}
Grazie a tutti spero di essermi spiegato!
 
Ultima modifica:
Questo potrebbe aiutarti
Java:
Button array[]= new Button[3];

for(int i=0; i<3; i++){
    array[I]=(Button)findViewById(getResources().getIdentifier("button" + i, "id", getApplicationContext().getPackageName()));
    array[I].setText("button"+i);
}
 
Ultima modifica:
Oppure puoi semplicemente fare->
Java:
ArrayList<Button> buttons = new ArrayList<Button>();
ViewGroup myParentLayout = (ViewGroup) find....
//]Tuo layout padre, linear, relative o più generale una view group

for( int i = 0; i < myParentLayout.getChildCount(); i++ )
  if( myParentLayout.getChildAt( i ) instanceof Button )
    buttons.add( (Button) myParentLayout.getChildAt( i ) );

Non sono sicuro se getChildCount mi ritorna il numero di figli di primo grado o tutti... Bho prova
In tal caso o lo trasformi ricorsivo o usi la soluzione di DoctorPaz


P.S: usa il tag code quando posti il codice=> basta che scrivi(senza gli spazi)
[ code = nomelinguaggio]
tuo codice
[ / code] oppure clicchi sul + della barra strumenti quando scrivi
 
  • Mi piace
Reazioni: DoctroPaz
Stato
Discussione chiusa ad ulteriori risposte.