私はいくつかの名前とURLを持つリストビューを持っています..私のアプリケーションが起動した後、私のローカルデータベースにレコードがあるかどうかをチェックします。そこにあるのであれば、最初にだけデータが挿入されていない場合、私の古いレコードはその後、リストビューのデータを表の列を記入し、クリア...これは私がそれをやっている方法です:私のコードのシュガーORMデータベーステーブルレコードを削除する
List<LocalProduct> allAuthors = LocalProduct.listAll(LocalProduct.class);
if (allAuthors == null) {
for (int allList=0;allList<adapter.getCount();allList++){
Product my = adapter.getItem(allList);
String offline_name = my.name.toString().trim();
String offline_url = my.image_url.toString().trim();
LocalProduct book = new LocalProduct(offline_name, offline_url);
book.save();
}
}else {
/*
SugarContext.terminate();
SchemaGenerator schemaGenerator = new SchemaGenerator(getContext());
schemaGenerator.deleteTables(new SugarDb(getContext()).getDB());
SugarContext.init(getContext());
schemaGenerator.createDatabase(new SugarDb(getContext()).getDB());
*/
for (int allList=0;allList<adapter.getCount();allList++){
Product my = adapter.getItem(allList);
String offline_name = my.name.toString().trim();
String offline_url = my.image_url.toString().trim();
LocalProduct book = new LocalProduct(offline_name, offline_url);
book.save();
}
}
コメントエリアテーブルを削除して再作成すると、毎回遅延が発生します...どうすれば私のレコードを削除できますか?
あなたは別のスレッドでバックグラウンドでそれをしないのはなぜ? –
これは遅延を消滅させるでしょうか?どうやって ? –
いいえ、UIでの作業をブロックしません。 –