我读从DB一些数据的线程的AsyncTask .... 这样:问题的AsyncTask螺纹
protected Void doInBackground(DBAdapter... db) {
try {
db[0].openDataBase();
Cursor c = db[0].getCursor3(db[0].TABLE_3, user_id);
float[] viteza = new float[c.getCount()];
String[] time = new String[c.getCount()];
if (c.moveToFirst()) {
do {
viteza[i] = Float.parseFloat(c.getString(3));
time[i] = c.getString(4);
publishProgress(????);
Thread.sleep(2500);
i++;
} while (c.moveToNext());
}
c.close();
db[0].close();
} catch (Exception e) {
Log.d("Eroare", "doInBackground", e);
}
return null;
}
我的问题是,每次我得到一个新的值viteza [ i]和时间[I]我要送他们到
protected void onProgressUpdate(....?) {
}
都在同一时间....但我不知道怎么做,原因publishProgress()可以只有一个参数! !
有人可以帮我吗?THX
我这样做...... viteza [contor] = Float.parseFloat(values [0]);它会抛出一个异常,并且我得到强制关闭: java.lang.NumberFormatException: 06-01 07:32:02.579:ERROR/AndroidRuntime(483):at org.apache.harmony.luni.util.FloatingPointParser.parseFltImpl (Native Method) at org.apache.harmony.luni.util.FloatingPointParser.parseFloat(FloatingPointParser.java:321) – adrian 2011-06-01 19:33:01
传递给'onProgressUpdate()'的字符串的确切值是什么?每次检查values数组的长度为2,并查看它们的值。异常是告诉你这个值不能作为浮点值进行分析。 – 2011-06-01 20:03:18
Bu的值是214.721 ....为什么不能解析为float ????? – adrian 2011-06-01 20:46:51