在android中从sqlite中获得数据很慢怎么解决
的有关信息介绍如下:解决方法 1:
不应该是用单独的语句,你不应该用单独的sql语句?
只是创建一个ArrayList,在这个activity类中存储所有需要的数值。
例如: ArrayList myData;
现在在数据库类的帮助下写一个function,就像下边:
//得到你想要的数据
public ArrayList getAllData() {
ArrayList subTitleList = null;
Cursor cursor = null;
try {
String queryString = "SELECT * FROM champions";
cursor = db.rawQuery(queryString, null);
if (cursor != null && cursor.moveToFirst()) {
subTitleList = new ArrayList();
do {
String nextUser = new String(cursor.getString(cursor.getColumnIndex("name")));
String nextUser = new String(cursor.getString(cursor.getColumnIndex("title")));
String nextUser = new String(cursor.getString(cursor.getColumnIndex("thumb")));
subTitleList.add(nextUser);
}
while (cursor.moveToNext());
System.out.println("it comes in SubTitleList");
}
}
catch (Exception e) {
e.printStackTrace();
subTitleList = null;
}
finally {
if (cursor != null && !cursor.isClosed()) {
cursor.deactivate();
cursor.close();
cursor = null;
}
if(db != null){
db.close();
}
}
//System.out.println("SubTitleList is: "+subTitleList);
return subTitleList;
}
现在在你的activity类中你可以调用这个方法,然后从myData ArrayList获得所有你需要的数据。
1
myData = db.getAllData(); // 我想如果你想要抓所有的数据的话是不需要ID的。
希望你能明白