Android:修改数据库后无法更新UI

新手

我的项目涉及以下内容:

1)应当在其中输入用户名称EditText视图(inputText

2)Button按下inputText该按钮时,将创建一个其名称位于其中的Person对象,并将该对象保存到领域数据库中。然后刷新,textLog以包括新人员的名称。

3)一个“ TextView”(textLog),显示领域数据库中Person对象的所有名称的列表。

我的问题是,单击按钮会刷新文本日志,然后再将人员对象保存到数据库中。这意味着直到我再次单击该按钮以创建新的Person对象时,新人员的名字才会显示。我希望将对象保存到数据库刷新UI ,因此它始终是最新的。以下代码来自我的MainActivity班级。早些时候我做过Handler handler = new Handler(Looper.getMainLooper());

// called when button is clicked
private void submit(View view)
{
    final String input = inputText.getText()
                                  .toString()
                                  .trim();
    // asynchronous transaction
    realm.executeTransactionAsync(realm -> {
        realm.copyToRealm(new Person(input));
        handler.post(this::refresh);
    });
}

private void refresh()
{
    textLog.setText(realm.where(Person.class)
                         .findAll()
                         .stream()
                         .map(Person::getName)
                         .collect(Collectors.joining("\n")));
}
拉里·石板

添加Realm.Transaction.OnSuccess()Realm.Transaction.OnError()回调到您的异步事务。调用这些方法后,您就知道事务已完成,并且可以刷新UI。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

RecyclerView 修改数据库行后不刷新

来自分类Dev

codeigniter-无法删除或修改数据库

来自分类Dev

修改数据库的元数据

来自分类Dev

django 修改数据库对象

来自分类Dev

修改数据库后,Wordpress主题标题不会显示

来自分类Dev

在其他活动中修改数据库后,如何重新填充arrayadapter?

来自分类Dev

5分钟后如何修改数据库(mysql)并将其还原?

来自分类Dev

如何在Meteor App中从UI修改数据库

来自分类Dev

如何仅使用PL / SQL更新大值的CLOB,而不修改数据库模式?

来自分类Dev

从数据库渲染复选框,然后在修改后更新数据库

来自分类Dev

无法更新后数据库更新当前时间戳

来自分类Dev

修改数据库中主键的身份规范

来自分类Dev

ddev:如何修改数据库凭据

来自分类Dev

Java在运行jar时修改数据库

来自分类Dev

使用MySQL Workbench修改数据库架构

来自分类Dev

在Entity Framework查询期间修改数据库表

来自分类Dev

通过AJAX修改数据库值

来自分类Dev

修改数据库表中的项目

来自分类Dev

Inno setup - 允许修改数据库

来自分类Dev

MySQL临时修改数据库用于开发

来自分类Dev

数据库更改后更新UI的方法

来自分类Dev

发生数据库更改后更新 Ui

来自分类Dev

Android-在数据库更新后保留数据

来自分类Dev

删除行后,SQLite数据库无法正确更新

来自分类Dev

在一个移动设备中修改数据库中的数据,并在另一移动设备中检索修改后的数据

来自分类Dev

sql更新不更改数据库中的数据

来自分类Dev

Android - 我无法从 SQLite 数据库更新数据

来自分类Dev

Android One Plus 2:无法更改数据库的语言环境

来自分类Dev

更改型号后如何更改数据库?

Related 相关文章

热门标签

归档