Premettendo che ho capito quello che intendete quando dite di utilizzare layout standard e di andare avanti ed infatti è quello che stò facendo (anche se non mi piace perchè secondo me un programmatore non deve utilizzare layout standard perchè è un pò come dire a qualcuno di fare un sito internet e questo prende un sito con grafica già fatta e lo utilizza).
Però, tralasciando ora l'argomento layout, ho voluto postare il codice di cui sopra per far capire che con android anche le cose più banali hanno bisogno di linee e linee di codice. Faccio un altro esempio : ExpandibleListAdaper possibile che per ottenerlo con android sia necessario uno codice di questo tipo ?
x1public class ExpandableListAdapterTestActivity extends Activity {
2
3// Elenco delle costanti per ciascun campo dei modelli
4private final static String FIRSTNAME_KEY = "firstname";
5private final static String LASTNAME_KEY = "lastname";
6private final static String ADDRESS_KEY = "address";
7private final static String ZIP_KEY = "zip";
8private final static String CELL_KEY = "cell";
9private final static String EMAIL_KEY = "email";
10
11// Array relativo alla definizione del layout dei gruppi
12private final static String[] GROUP_KEYS = { FIRSTNAME_KEY, LASTNAME_KEY };
13private final static int[] GROUP_VIEW_IDS = { R.id.firstname, R.id.lastname };
14
15// Array relativo alla definizione del layout dei gruppi
16private final static String[] CHILD_KEYS = { ADDRESS_KEY, ZIP_KEY,
17CELL_KEY, EMAIL_KEY };
18private final static int[] CHILD_VIEW_IDS = { R.id.address, R.id.zip,
19R.id.cell, R.id.email };
20
21/** Called when the activity is first created. */
22
23public void onCreate(Bundle savedInstanceState) {
24super.onCreate(savedInstanceState);
25setContentView(R.layout.main);
26// Creiamo il SimpleExpandableAdapter
27ExpandableListAdapter expAdapter =
28new SimpleExpandableListAdapter(this, createGroupMap(), R.layout.expanded_layout,
29R.layout.collapsed_layout, GROUP_KEYS, GROUP_VIEW_IDS, createDataMap(),
30R.layout.child_layout, R.layout.last_child_layout, CHILD_KEYS,
31CHILD_VIEW_IDS);
32// Otteniamo il riferimento alla ExpandableListView
33ExpandableListView expListView = (ExpandableListView)findViewById(R.id.expandableListView);
34// Assegnamo l'adapter
35expListView.setAdapter(expAdapter);
36}
37
38public List<? extends Map<String, String>> createGroupMap() {
39List<Map<String, String>> groupMap = new ArrayList<Map<String, String>>();
40for(int i = 0;i<10;i++){
41Map<String,String> groupData = new HashMap<String,String>();
42groupData.put(FIRSTNAME_KEY, "First_"+i);
43groupData.put(LASTNAME_KEY, "Last_"+i);
44groupMap.add(groupData);
45}
46return groupMap;
47
48}
49
50public List<? extends List<? extends Map<String, String>>> createDataMap() {
51List<List<Map<String, String>>> dataMap = new ArrayList<List<Map<String, String>>>();
52for(int i = 0;i<10;i++){
53List<Map<String, String>> itemMap = new ArrayList<Map<String, String>>();
54for(int j = 0;j<5;j++){
55Map<String,String> groupData = new HashMap<String,String>();
56groupData.put(ADDRESS_KEY, "Address_"+i+"_"+j);
57groupData.put(ZIP_KEY, "Cap_"+i+"_"+j);
58groupData.put(EMAIL_KEY, "Email_"+i+"_"+j);
59groupData.put(CELL_KEY, "Cell_"+i+"_"+j);
60itemMap.add(groupData);
61}
62dataMap.add(itemMap);
63}
64return dataMap;
65}
66}
ragazzi ma ci rendiamo conto che questa cosa con il C++, il PHP e quant'altro si fa con un array, una tabella ed un ciclo for ?
Evito di parlare di Spinner ed ImageSpinnerAdapter perchè ti fanno venire i capelli dritti !
@TheCopacabanaMan : c'è un intero capitolo dedicato all'SQLite però spiega solo come creare un db, come scrivere e leggere dentro ma non come effettuare l'operazione che vuoi tu. Mi spiace, fose dovrai utilizzare tipo 1000 linee di codice per farlo![]()
![]()