У меня есть модель, отображаемая в RecyclerView, моя модель имеет свойство location
, и из этого местоположения я хочу отобразить расстояние до текущего местоположения.
SmartLocation.with(mContext.applicationContext)
.location()
.config(LocationParams.Builder()
.setAccuracy(LocationAccuracy.HIGH)
.setDistance(5f)
.build())
.start {
Log.e("EVPLOG", "Callback for id: ${item.id}")
if (item.latitude != null && item.latitude != null) {
val itemLocation = Location("")
itemLocation.latitude = item.latitude!!
itemLocation.longitude = item.longitude!!
val distance = distance(itemLocation, it)
holder.txtEvpRecordItemDistance.text = Util.getDistanceText(distance)
}
}
Я использую этот код в onBindViewHolder
адаптера.
ПРОБЛЕМА:
По какой-то причине обновляется только текст расстояния последнего элемента в RecyclerView.
Я подозреваю, что это как-то связано с обратным вызовом метода Start.
У кого-нибудь была проблема, подобная этой?