我正在尝试访问我的gson json对象中的共享首选项。我不知道如何访问它。这是我的代码,用于访问片段中的共享首选项。
第一个
这是我的对象类。我正在尝试访问calculateTheDistance
函数中的共享首选项。当我键入requireContext()时出现错误。
val PREFS_FILENAME = "com.app.app.prefs"
private var loclistsDT= mutableListOf<LatLng>()
fun calculateTheDistance(locationList: MutableList<LatLng>): String {
val sharedPreferences = requireContext().getSharedPreferences(PREFS_FILENAME, 0)
val gson = Gson()
val json = sharedPreferences.getString("loclists", "")
val type = object : TypeToken<MutableList<LatLng>>() {}.type
if (json == null || json == "")
loclistsDT = mutableListOf<LatLng>()
else
loclistsDT = gson.fromJson(json, type)
if(locListsDT.size > 1){
val meters =
SphericalUtil.computeDistanceBetween(locListsDT.first(), locListsDT.last())
val kilometers = meters / 1000
return DecimalFormat("#.##").format(kilometers)
}
return "0.00"
}
} ```
1条答案
按热度按时间rekjcdws1#
在您的函数
calculateTheDistance
中传递活动的上下文,如果您无法访问application
,这是如何使用此方法时,如果来自片段,则在参数中添加
requireContext
,如果来自活动,则添加this
。