android-room相关内容
我有两个 DAO、两个存储库和两个 POJO.有什么方法可以创建两个的一个 Livedata?我需要它来为 Recyclerview 制作单个列表.POJO 是类似的对象. 费用存储库: 公共类 ExpenseRepository {私人费用道费用道;私有 LiveData>所有费用;公共费用存储库(应用程序应用程序){ExpenseIncomeDatabase 数据库 = Expense
..
我正在尝试使用 room.im 删除一行 recyclerview.我正在滑动以删除特定行.... 这是我的地址表--> @Entity(tableName = "address")类地址{@PrimaryKey(autoGenerate = true)变量 ID = 0@ColumnInfo(name = "地址")var 地址:字符串?= 空} 地址道: @Dao接口地址道{@插入
..
我发现Dao返回的LiveData会在DB中更新行时调用它的观察者,即使LiveData值明显没有改变. 考虑类似以下示例的情况: 示例实体 @Entity公共类用户{公共长ID;公共字符串名称;//其他变量的例子公共日期 lastActiveDateTime;} 例道 @Dao公共接口 UserDao {//我只对用户名感兴趣@Query("选择用户名")LiveData>ge
..
收到第一个结果后如何移除观察者?下面是我尝试过的两种代码方式,但即使我删除了观察者,它们也会继续接收更新. Observer 观察者 = new Observer() {@覆盖public void onChanged(@Nullable DownloadItem downloadItem) {如果(下载项!= null){DownloadManager.this.downloadManager
..
我看过这个问题.类似的错误.但在我的情况下是不同的. 在使用 Room 时,我正在创建表格.它工作正常. @Daointerface用户道{@Query("SELECT * FROM 用户")fun getAll(): List@Insert(onConflict = OnConflictStrategy.REPLACE)有趣的插入(用户:用户)@删除有趣的删除(用户:用户)} 但后来我
..
我的EditText是这样的: 我猜三元运算不适用于双向 DataBinding. 解决方案 好的,这些天后我找到了完美的解决方案: 1.创建BindingAdapter函数: object DataBindingUtil {//放置在一个util(单例)类中@BindingAdapter("android:text", "isAddCase")//自定义布局属性,见下@Jv
..
如何使用 livedata 进行数据绑定? activity_user_detail.xml:
..
我在现有代码中使用了数据绑定,现在我正在迁移到 Room 进行持久化.我已按照 Florina 的博客 中提到的步骤操作> 当我删除房间依赖时,我的代码构建良好,没有 java 代码错误或 BR 相关错误 annotationProcessor 'android.arch.persistence.room:compiler:1.0.0' 并且它也能运行,但给出运行时异常,说 databas
..
我正在使用新的 Android ORM Room.我遇到了以下问题,使用 ORDER BY 和参数的查询不起作用. 如果我想使用从 ORDER BY 的参数填充的字段,它不起作用.它只是不排序任何东西. @Query("SELECT * FROM User ORDER BY :orderBY ASC")列表sortedFind(String orderBY); 但是,当我将 ORDER
..
我房间里有一个实体 @Entity(foreignKeys ={@ForeignKey(entity = Label.class, parentColumns = "_id", childColumns = "labelId", onDelete = CASCADE),@ForeignKey(entity = Task.class, parentColumns = "_id", childCol
..
Java POJO 对象 公共类部分{@ColumnInfo(name="section_id")公共 int mSectionId;@ColumnInfo(name="section_name")公共字符串 mSectionName;公共 int getSectionId() {返回 mSectionId;}public void setSectionId(int mSectionId) {t
..
最近我正在探索谷歌最近推出的 Android 架构.从 文档 我发现了这个: public class MyViewModel extends ViewModel {private MutableLiveData>用户;public LiveData>获取用户(){如果(用户 == 空){users = new MutableLiveData>();加载用户();}回访用户;}私有无效负载用户(
..
如何使用 Room Persistence Library 删除特定表上的所有条目?我需要删除表,但找不到如何执行此操作的任何信息. 仅当数据库正在迁移或加载所有条目并删除它们时:) 解决方案 您可以创建一个 DAO 方法来执行此操作. @Dao接口 MyDao {@Query("从 myTableName 中删除")public void nukeTable();}
..
我试图在下面的代码中找出为什么在我用新数据填充数据库后 Room 的 LiveData observable 没有给我新的变化. 这是放在我的活动的 onCreate 方法上: shiftsViewModel = ViewModelProviders.of(this).get(ShiftsViewModel.class);移动视图模型.getShifts().observe(this, t
..
假设我想在两个实体 Foo 和 Bar 之间做一个 INNER JOIN: @Query("SELECT * FROM Foo INNER JOIN Bar ON Foo.bar = Bar.id")列表findAllFooAndBar(); 是否可以强制使用这样的返回类型? 公共类 FooAndBar {福福;吧台;} 当我尝试这样做时,我收到此错误: 错误:无法弄清楚如何从游标读取
..
我如何表示“多对多"?与房间的关系?我的列名也一样. 例如我有 Guest 和 Reservation.Reservation 可以有多个 Guest,一个 Guest 可以是多个 Reservation 的一部分. 这是我的实体定义: @Entity 数据类 Reservation(@PrimaryKey 有效 ID:长,val 表:字符串,val 客人:List)@Entity
..
我正在将一个项目转换为 Kotlin 并且我正在尝试将我的模型(这也是我的实体)变成一个数据类我打算使用 Moshi 来转换来自 API 的 JSON 响应 @Entity(tableName = "movies")数据类 MovieKt(@首要的关键变量 id : Int,var 标题:字符串,变量概述:字符串,varposter_path:字符串,var background_path:字符
..
我使用 Relation 在 Room 中添加了一对多关系.我参考了 这篇文章 写下Room中关系的代码. 这篇文章讲述了如何从数据库中读取值,但将实体存储到数据库中导致 userId 为空,这意味着 2 个表之间没有关系. 我不确定在使用 时将 insert User 和 List of Pet 插入数据库的理想方法是什么userId 值. 1) 用户实体: @Entity公
..
我正在尝试使用新的 Android Persistence Room Library 在两个数据库表之间创建关系.我查看了文档并尝试实现在 https 中找到的示例://developer.android.com/reference/android/arch/persistence/room/Relation.html: @Entity公共类用户{@首要的关键内部标识;}@实体公共类宠物{@首
..
我在运行 androidTest 时遇到问题. 这是我在 gradle 中的设置: 应用插件:'com.android.application'应用插件:'kotlin-android'应用插件:'kotlin-android-extensions'应用插件:'kotlin-kapt'安卓 {compileSdkVersion 26默认配置{applicationId "com.blabl
..