salvar dados do usuário durante um dia (no mesmo dia -> muitos dados do usuário)
Eu tenho um aplicativo onde o usuário insere dados no texto de edição e pressiona o botão salvar.
Ao pressionar 'salvar' eu salvo em um arquivo os dados do usuário (em uma coluna) e a data atual (na outra coluna).
Em seguida, pressiono outro botão e faço os dados da plotagem (usando um inventivo) data (eixo x) (eixo y).
Assim, a inserção de dados durante um dia resulta em salvar, por exemplo: "1" (dados do usuário) -> 20/4/2013, "2" -> 20/4/2013, "3" -> 20/4/2013 .
E no gráfico eu tenho 3 pontos no eixo y (ok) e 3 pontos no eixo x (não ok).
Eu quero ter um ponto no eixo x porque os dados foram inseridos no mesmo dia.
Eu salvo dados:
public void savefunc(){
SimpleDateFormat thedate = new SimpleDateFormat("dd/MM/yyyy");
Date d=new Date();
String formattedDate=thedate.format(d);
Log.d("tag","format"+formattedDate);
dates_Strings.add(formattedDate);
double thedata=Double.parseDouble(value.getText().toString().trim());
mydata.add(thedata);
File sdCard = Environment.getExternalStorageDirectory();
File directory = new File (sdCard, "MyFiles");
directory.mkdirs();
File file = new File(directory, filename);
FileOutputStream fos;
//saving them
try {
fos = new FileOutputStream(file);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fos));
for (int i=0;i<mydata.size();i++){
bw.write(mydata.get(i)+","+dates_Strings.get(i)+"\n");
}
...
Como posso salvar os dados do usuário durante um dia?
Talvez alguns chequem aqui:Date d=new Date();
? Para verificar se é o mesmo dia.
Ou aqui :bw.write(mydata.get(i)+","+dates_Strings.get(i)+"\n");
Mas eu não consigo entender.
Por exemplo, eu insiro dados "1", "2", "3" na data "20/4/2013".
Isto é o que eu recebo agora usando o meu código:Isto é o que eu tenho agora http://i35.tinypic.com/2rmsck5.png
Mas eu preciso gráfico como abaixo: dados inseridos no mesmo dia devem ser colocados juntos ::Isto é o que eu quero http://i38.tinypic.com/255p5i9.png
---------------ATUALIZAR---------------------------------- ----------------
mRenderer.setXLabels(0);
for (int i=0;i<mydata.size();i++){
mRenderer.addXTextLabel(i,dates_Strings.get(i));
Date lastDate=null;
String lastdate="";
try{
// the initial date
Date initialDate=formatter.parse(dates_Strings.get(mydata.size()-1));
Calendar c = Calendar.getInstance();
c.setTime(initialDate);
c.add(Calendar.DATE, 1); // increase date by one
lastDate =c.getTime();
}catch ...
}
mRenderer.setXAxisMax(lastDate.getTime());
mRenderer.addXTextLabel(i,dates_Strings.get(i));
}