2016-05-13 6 views
0

SQLiteからカーソルアダプタを使用してリストビューを作成します。日付はCalendarViewに挿入され、SQLiteのは、以下に基づいてYYYY-MM-DD言ったように、それは形式になっています。SQLiteとカーソルアダプタから来る日付に基づいてListViewアイテムを並べ替えることができません

カーソルアダプター内部
cdr.setOnDateChangeListener(new CalendarView.OnDateChangeListener() { 

    @Override 
    public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) 
     { 
      int d = dayOfMonth; 
      int m = month + 1; 
      int y = year; 

      if (d < 10) { 
       //String newDay = "0" + String.valueOf(d); 
       mDate = String.valueOf(y) + "-" + String.valueOf(m) + "-" + String.valueOf(d); 
      } else { 
       //String newDay = "0" + String.valueOf(d); 
       mDate = String.valueOf(y) + "-" + String.valueOf(m) + "-" + String.valueOf(d); 
      } 

      SaveTheGame.setEnabled(true); 

     } 
    }); 

私はDD-MM-YYYYのように日付を作るために、以下を使用します。

SimpleDateFormat curFormater = new SimpleDateFormat("yyyy-MM-dd"); 
    Date dateObj = null; 
    try { 
     dateObj = curFormater.parse(InitialDate); 
    } catch (ParseException e) { 
     e.printStackTrace(); 
    } 

    SimpleDateFormat postFormater = new SimpleDateFormat("dd/MM/yyyy"); 
    String newDateStr = postFormater.format(dateObj); 

    textViewDate.setText(newDateStr); 

私は次のようにデータベースを照会:

public Cursor getAll() { 
    SQLiteDatabase db = this.getReadableDatabase(); 
    String buildSQL = "SELECT * FROM " + A_TABLE_ + " ORDER BY date DESC"; 
    return db.rawQuery(buildSQL, null); 
} 

私は次のようなqueryareから取得結果:

私がここで間違っているのmは何を日付

の多い順ではありません

09/05/2016 George 
06/05/2016 John 
04/05/2016 Mary 
22/05/2016 Nick 

答えて

0

SELECT *に変更し、クエリ "+ A_TABLE_ +" ORDER FROM日付BY(日)DESC

+0

あなたは、いくつかの説明を追加する必要があります。 – tynn

+0

何も起こらないカーソルアダプターはリストの一番下に置く項目を見る –

+0

アダプターの完全なコードを投稿してください –

関連する問題