在我的数据库中使用MMM / dd / yyyy格式的日期保存我无法获得listView以填充日期,如果我以dd / MM / yyyy或甚至MM / dd / yyyy保存日期
public class ListByDate extends ListActivity {
DBAdapter myDB;
String tag = "List By Date";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.datelist);
openDB();
ArrayList<String> db_results = new ArrayList<String>();
Cursor C = myDB.getDate();
while (C.moveToNext()) {
db_results.add(String.valueOf(C.getString(C
.getColumnIndex(DBAdapter.KEY_DATE))));
}
C.close();
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, db_results));
}
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
Object date1 = this.getListAdapter().getItem(position);
String dateClicked = date1.toString();
SimpleDateFormat sdf = new SimpleDateFormat("MMM/dd/yyyy");
Date dateClick = null;
try {
dateClick = sdf.parse(dateClicked);
} catch (java.text.ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
long da = dateClick.getTime();
// Log to test clicks
Log.v("List Item Click", dateClicked + " " + id + " " + position);
Intent sd = new Intent(this, SelectedDate.class);
sd.putExtra("seldate", dateClicked);
sd.putExtra("selda", da);
startActivity(sd);
finish();
}
private void openDB() {
myDB = new DBAdapter(this);
myDB.open();
}
@Override
protected void onDestroy() {
super.onDestroy();
myDB.close();
}
@Override
protected void onStart() {
super.onStart();
Log.i(tag, "Start Called");
}
@Override
protected void onResume() {
super.onResume();
Log.i(tag, "Resume Called");
}
@Override
protected void onPause() {
super.onPause();
myDB.close();
Log.i(tag, "Pause Called");
}
@Override
protected void onStop() {
super.onStop();
myDB.close();
Log.i(tag, "Stop Called");
}
}
我试图避免的是listView中日期的顺序 如果我在新西兰(我居住的地方)的日常日期格式中将日期保存到数据库dd / MM / yyyy 日期将按dd排序,我想按月排序 我不想要:
2014年10月8日
2014年10月9日
2014年11月8日
2014年11月9日
我认为使用MMM dd yyyy(并感谢XFactor指出/错误)会解决这个问题并且不会让人迷惑, 如果我使用MM / dd / yyyy来自新西兰的人可能并且可能会读到2014年12月10日dd / MM / yyyy 2014年12月10日而不是2014年10月12日
如果我查看我的数据库,日期存储MMM dd yyyy但listView将打开一个空列表,正如我所说,它与dd / MM / yyyy一起正常工作