Autore Topic: Date in 2 Spinner  (Letto 440 volte)

Offline Kris

  • Utente junior
  • **
  • Post: 56
  • Respect: 0
    • Mostra profilo
Date in 2 Spinner
« il: 28 Settembre 2013, 17:33:09 CEST »
0
Ho una listview in cui devo visualizzare i dati del db sqlite in base all'anno scelto nello spinner1 e al mese scelto nello spinner2 (le date nel db sono memorizzate con il formato yyyy-mm-dd)

fin ora ho utilizzato questo codice per visualizzare i dati solo in base all'anno scelto, ma ora voglio permettere di scegliere anche il mese.

Ho creato una classe per ottenere gli anni dei dati nel db con una select di questo tipo
Codice (Java): [Seleziona]
SELECT DISTINCT strftime('%Y'.....Per ottenere i mesi ne ho creata un'altra identica sostituendo con '%m....

Tutto ok ma ora non riesco ad adattare la query per ottenere i dati in base all'anno ed al mese scelti

Questo è una parte di codice che utilizzo per la query in base all'anno
Codice (Java): [Seleziona]
private void showDetails(String anno){
                SQLiteDatabase db = new MHelper(this).getReadableDatabase();
                final List<Dettaglio> dettagli = new ArrayList<Dettaglio>();
               
               
                        String sql = "SELECT _Id,Data,Cat FROM Gi WHERE data LIKE '"+anno+"%'";
                        Cursor c = db.rawQuery(sql, null);

questo è il codice con il quale passo il parametro (anno)
Codice (Java): [Seleziona]
if (years.size() == 0){
                        int currentYear = Calendar.getInstance().get(Calendar.YEAR);
                        years.add(currentYear+"");
                }
               
               
                SpinnerAdapter adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, years);
               
                yearSelector.setAdapter(adapter);
                yearSelector.setSelection(0);
                yearSelector.setOnItemSelectedListener(new OnItemSelectedListener() {

                        @Override
                        public void onItemSelected(AdapterView<?> adapterView, View view,
                                        int position, long id) {
                                String anno = years.get(position);
                               
                                showDetails(anno);
                        }

                        @Override
                        public void onNothingSelected(AdapterView<?> arg0) {
                                return;
                        }