3.本地刷新和网络刷新,在添加到界面的时候会有可能冲突;导致数据显示异常
关于这个问题 其实我感觉老师并没有解决,而是模糊带过了 。。。
ContactRepository.class
中将这段代码:
SQLite.select()
.from(User.class)
.where(User_Table.isFollow.eq(true))
.and(User_Table.id.notEq(Account.getUserId()))
.orderBy(User_Table.name, true)
.limit(100)
.async()
.queryListResultCallback(this)
.execute();
替换成这段:
new Thread(new Runnable() {
@Override
public void run() {
final List<User> users = SQLite.select()
.from(User.class)
.where(User_Table.isFollow.eq(true))
.and(User_Table.id.notEq(Account.getUserId()))
.orderBy(User_Table.name, true)
.limit(100)
.queryList();
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
Run.onUiAsync(new Action() {
@Override
public void call() {
onListQueryResult(null, users);
}
});
}
}).start();
发现网络请求先回来 后面数据库查询的数据才回来 界面的刷新就会有问题了
而在onDataSave中添加个boolean做判断是否为预加载数据 解决这个问题
劳烦大家看看是不是我想错了 。。。。