Android 从SQL数据库中获取月份数据,从微调器中选择月份
首先,感谢你抽出时间来看我的问题 这是我的问题,我创建了一个微调器,作为显示月份的字符串数组。 我要做的是在微调器中获取所选月份的数据 微调器:Android 从SQL数据库中获取月份数据,从微调器中选择月份,android,sql,database,sqlite,spinner,Android,Sql,Database,Sqlite,Spinner,首先,感谢你抽出时间来看我的问题 这是我的问题,我创建了一个微调器,作为显示月份的字符串数组。 我要做的是在微调器中获取所选月份的数据 微调器: Spinner spinner = (Spinner) findViewById(R.id.spinner); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource( this, R.array.mnth_array, and
Spinner spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.mnth_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
获取日期的方法:
public String getDataDate() {
// TODO Auto-generated method stub
String[] columns = new String[] { KEY_ROWIDACTONE, KEY_DATEACTONE,
KEY_VALUEACTONE, KEY_DESCRIPTIONACTONE };
Cursor c = ourDatabase.query(DATABASE_TABLEONE, columns, null, null,
null, null, null);
String result = "";
int iRow = c.getColumnIndex(KEY_ROWIDACTONE);
int iDate = c.getColumnIndex(KEY_DATEACTONE);
int iValue = c.getColumnIndex(KEY_VALUEACTONE);
int iDescription = c.getColumnIndex(KEY_DESCRIPTIONACTONE);
for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
result = result + c.getString(iDate) + "\n ";
}
return result;
我想知道的是,我可以从微调器中获取月份,以获取我想要的相应月份的数据
日期格式:
final DatePickerDialog.OnDateSetListener mydate = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
myCalendar.set(Calendar.YEAR, year);
myCalendar.set(Calendar.MONTH, monthOfYear);
myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
updateLabel();
}
};
date.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
new DatePickerDialog(ActoneSQLentry.this, mydate, myCalendar
.get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
myCalendar.get(Calendar.DAY_OF_MONTH)).show();
}
});
}
private void updateLabel() {
String myFormat = "dd/MM/yy"; // In which you need put here
SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
date.setText(sdf.format(myCalendar.getTime()));
}
取决于数据库中日期的格式确定,格式为问题的编辑版本!这就是您在数据库中使用的格式吗?这不是一个非常方便的格式。是的!有什么建议吗?对于初学者来说,yy/MM/dd更适合订购或过滤。使用完整的时间戳作为整数会更好,因为不会丢失任何数据。
public String getDataDate() {
// TODO Auto-generated method stub
String[] columns = new String[] { KEY_ROWIDACTONE, KEY_DATEACTONE,
KEY_VALUEACTONE, KEY_DESCRIPTIONACTONE };
Cursor c = ourDatabase.query(DATABASE_TABLEONE, columns, null, null,
null, null, null);
String result = "";
int iRow = c.getColumnIndex(KEY_ROWIDACTONE);
int iDate = c.getColumnIndex(KEY_DATEACTONE);
int iValue = c.getColumnIndex(KEY_VALUEACTONE);
int iDescription = c.getColumnIndex(KEY_DESCRIPTIONACTONE);
for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
result = result + c.getString(iDate) + "\n ";
}
return result;
final DatePickerDialog.OnDateSetListener mydate = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
myCalendar.set(Calendar.YEAR, year);
myCalendar.set(Calendar.MONTH, monthOfYear);
myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
updateLabel();
}
};
date.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
new DatePickerDialog(ActoneSQLentry.this, mydate, myCalendar
.get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
myCalendar.get(Calendar.DAY_OF_MONTH)).show();
}
});
}
private void updateLabel() {
String myFormat = "dd/MM/yy"; // In which you need put here
SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
date.setText(sdf.format(myCalendar.getTime()));
}