我想用Room
填充String resource
数据库,但不能。
我有这个:
userDao.insertUser(User(getString(R.string.name)))
但是getString()
在这里不起作用。
我需要像这样通过context
:
context.getString(R.string.name)))
,但我不知道如何通过context
。
有什么想法吗?
答案 0 :(得分:0)
我首先用硬编码字符串填充了它。 当用户首次启动应用程序时,我将预填充的字符串编辑为正确的翻译。通过将正确的带有Dao的字符串传递到数据库。
答案 1 :(得分:0)
首先,在@Dao类中访问context
是错误的做法。
您可能需要考虑先将getString(R.string.name)
设置为String变量,将其分配给User
对象,然后再将其添加到roomdb。
--- In View ---
val name = context.getString(R.string.name)
val user = User(name, xxx, xxx)
--- In Dao ---
userDao.insertUser(user)