Strano, ma non mi entra assolutamente in testa.
Risposta parziale:
Un ArrayAdapter usa un array di stringhe per porlo in una ListView.
Mi fabbrico un layout da inflatare con una TextView e un button.
Posso giocare a porre la stringa sia come testo della TextView sia come testo del button.
Vediamo se mi riesce...
A parte il context, l'adapter deve prendere come parametri il layout e la view specifica.
E da ultimo l'array da cui prendere gli elementi per metterli nella view specifica.
Ho realizzato un codice usando come view specifica sia la TextView sia il Button.
Con il primo codice:
public class Lista extends AppCompatActivity {
ArrayAdapter arrayAdapter;
ArrayList arrayList;
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lista);
arrayList=new ArrayList();
arrayList.add("lunedi");
arrayList.add("martedi");
arrayList.add("mercoledi");
arrayAdapter=new ArrayAdapter(this,R.layout.row,R.id.textView,arrayList);
listView=(ListView) findViewById(R.id.listView);
listView.setAdapter(arrayAdapter);
}
...
Ho ottenuto questo:
Con questo codice, invece, che prende come view specifica il Button...
public class Lista extends AppCompatActivity {
ArrayAdapter arrayAdapter;
ArrayList arrayList;
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lista);
arrayList=new ArrayList();
arrayList.add("lunedi");
arrayList.add("martedi");
arrayList.add("mercoledi");
arrayAdapter=new ArrayAdapter(this,R.layout.row,R.id.button2,arrayList);
listView=(ListView) findViewById(R.id.listView);
listView.setAdapter(arrayAdapter);
}
.....
ottengo questo:


Nessun commento:
Posta un commento