正在从另一个 activity 检索共享首选项。 Android 工作室,Kotlin,API 29
Retrieving a shared preferences item from another activity. Android Studio, Kotlin, API 29
我是一个完整的新手,正在编写我的第一个应用程序。
我创建了一个名为 SettingsInput.kt 的 Activity,它可以很好地将设置保存为 sharedPreferences,并在按下按钮时显示它们。
现在我想在函数中使用其中一个设置作为计算的一部分,以从数据库中的几个表中剔除旧数据该函数在数据库处理程序中 class.
我收到一个错误“未解决的引用:getSharedPreferences”None 到目前为止,我尝试过的方法都有帮助。记住目标 API 级别是 API 29,谁能帮忙?
var sharedPrefFile = "greenbandbasicpreference"
val sharedPreferences:SharedPreferences = getSharedPreferences(sharedPrefFile,Context.MODE_PRIVATE)//doesnt recognise getSharedPreferences
fun cullData(){
var noow = ZonedDateTime.now(Clock.systemUTC())
var noowSecs:Long = noow.toEpochSecond()
var noowMins:Long = (noowSecs)/60
//var bolusLifeMins:Long = 220// this has to come from a database or store of "preferences"
//var bolusLifeMins:Long = sharedPreferences.getLong("insLife_key",0)
val bolusLifeMins = getSharedPreferences("greenbandbasicpreference",Context.MODE_PRIVATE)
var minTimeMins = noowMins - bolusLifeMins - 2*(24*60)
val db = this.writableDatabase
db.delete(
"BolusTable",
"btime <"+ minTimeMins ,
null
)
db.delete(//this is a part of the function for cull CarbsTable
"CarbsTable",
"carbTime <"+ minTimeMins ,
null
)
db.close()
}
方法 getSharedPreferences
是来自上下文 class 的方法,因此您需要一个上下文来请求它,例如:
context.getSharedPreferences(sharedPrefFile,Context.MODE_PRIVATE)
我是一个完整的新手,正在编写我的第一个应用程序。 我创建了一个名为 SettingsInput.kt 的 Activity,它可以很好地将设置保存为 sharedPreferences,并在按下按钮时显示它们。
现在我想在函数中使用其中一个设置作为计算的一部分,以从数据库中的几个表中剔除旧数据该函数在数据库处理程序中 class.
我收到一个错误“未解决的引用:getSharedPreferences”None 到目前为止,我尝试过的方法都有帮助。记住目标 API 级别是 API 29,谁能帮忙?
var sharedPrefFile = "greenbandbasicpreference"
val sharedPreferences:SharedPreferences = getSharedPreferences(sharedPrefFile,Context.MODE_PRIVATE)//doesnt recognise getSharedPreferences
fun cullData(){
var noow = ZonedDateTime.now(Clock.systemUTC())
var noowSecs:Long = noow.toEpochSecond()
var noowMins:Long = (noowSecs)/60
//var bolusLifeMins:Long = 220// this has to come from a database or store of "preferences"
//var bolusLifeMins:Long = sharedPreferences.getLong("insLife_key",0)
val bolusLifeMins = getSharedPreferences("greenbandbasicpreference",Context.MODE_PRIVATE)
var minTimeMins = noowMins - bolusLifeMins - 2*(24*60)
val db = this.writableDatabase
db.delete(
"BolusTable",
"btime <"+ minTimeMins ,
null
)
db.delete(//this is a part of the function for cull CarbsTable
"CarbsTable",
"carbTime <"+ minTimeMins ,
null
)
db.close()
}
方法 getSharedPreferences
是来自上下文 class 的方法,因此您需要一个上下文来请求它,例如:
context.getSharedPreferences(sharedPrefFile,Context.MODE_PRIVATE)