Pessoal porque quando passou este codigo aqui
[code]num = 4;
GraphViewData[] data = new GraphViewData[num];
double v = 0;
for (int i = 0; i < num; i++) {
v += 0.2;
data[i] = new GraphViewData(i, Math.sin(v));
}
for (int i = 0; i < num; i++) {
v = 1.5;
data[i] = new GraphViewData(i, Math.random() * v);
Log.i("AZ Cliente------", "Passou aqui............" + i + " "
+ Math.random() * v);
}[/code]
O grafico funciona, agora estou querendo passar o codigo assim
DSRESTConnection conn = gc.getConnection();
TServerMethods1 serv = new TServerMethods1(conn);
TDataSet ds;
try {
ds = serv.GraficoAZCliente("S", AZClienteActivity.login,
"06-01-2013", "06-06-2013");
boolean passouAqui = false;
GraphViewData[] data = new GraphViewData[num];
while (ds.next()) {
concValorGasto = ds.getValue("VALOR_GASTO").GetAsCurrency();
if (passouAqui == false) {
num = 0;
passouAqui = true;
} else {
num = num + 1;
}
Log.i("AZ Cliente------", "Passou aqui............" + num
+ " - " + concValorGasto);
data[num] = new GraphViewData(num, concValorGasto);
}
E não funciona da erro
Ja comentei a linha data[num] = new GraphViewData(num, concValorGasto); pra ver se estava dando o loop com os valores, e esta vindo corretamente, só que não funciona de forma alguma.
O exemplo deste grafico peguei daqui
e
https://github.com/jjoe64/GraphView-Demos/tree/master/src/com/jjoe64/graphviewdemos
Se alguém puder me ajudar ficarei grato.
Obrigado.
Pessoal, se eu conseguir ao menos armazenar os valores que passam aqui neste while
[code]while (ds.next()) {
concValorGasto = ds.getValue(“VALOR_GASTO”).GetAsCurrency();
if (passouAqui == false) {
num = 0;
passouAqui = true;
} else {
num = num + 1;
}
Log.i("AZ Cliente------", "Passou aqui............" + num
+ " - " + concValorGasto);[/code]
Tipo
(O armazenamento seria os valores que vem aqui concValorGasto = ds.getValue(“VALOR_GASTO”).GetAsCurrency();)
E depois ler os valores um a um no for
[code]GraphViewData[] data = new GraphViewData[num];
for (int i = 0; i < num; i++) {
v = 1.5;
data[i] = new GraphViewData(i, valor );
Log.i("AZ Cliente------", "Passou aqui............" + i + " "
+ concValorGasto);
}[/code]
Eu ja conseguiria fazer o que preciso.
Alguém sabe dizer uma forma de fazer isso?
Obrigado.
para evitar os OutOfBoundException prefira utilizar foreach ou defina limite com array.leght.
[code]
for (int i = 0; i < data.leght ; i++) {
v = 1.5;
data[i] = new GraphViewData(i, valor );
Log.i("AZ Cliente------", "Passou aqui............" + i + " "
+ concValorGasto);
}
int i = 0
for (GraphViewData item : data) {
v = 1.5;
item = new GraphViewData(i, valor );
Log.i("AZ Cliente------", "Passou aqui............" + i + " "
+ concValorGasto);
i++
} [/code]
[quote=fabriciov]para evitar os OutOfBoundException prefira utilizar foreach ou defina limite com array.leght.
[code]
for (int i = 0; i < data.leght ; i++) {
v = 1.5;
data[i] = new GraphViewData(i, valor );
Log.i("AZ Cliente------", "Passou aqui............" + i + " "
+ concValorGasto);
}
int i = 0
for (GraphViewData item : data) {
v = 1.5;
item = new GraphViewData(i, valor );
Log.i("AZ Cliente------", "Passou aqui............" + i + " "
+ concValorGasto);
i++
} [/code][/quote]
Obrigado fabriciov, consegui resolver aqui da seguinte forma, pegando o size do searchResultsGraficoCliente
num = searchResultsGraficoCliente.size();
GraphViewData[] data = new GraphViewData[num];
LineGraphView graphView;
graphView = new LineGraphView(this, "Rateio de Compras do Cliente");
for (int i = 0; i < searchResultsGraficoCliente.size(); i++) {
concValorGasto = searchResultsGraficoCliente.get(i).getValor();
Log.i("Rateio: ", num + "*****" + concValorGasto);
data[i] = new GraphViewData(i, concValorGasto);
}