Я пытаюсь получить матчи по дате из футбольного API и показать их сгруппированными по лигам.
Итак, я создал изменяемый список в ViewModel, чтобы хранить каждый элемент матча с идентификатором прибора в качестве уникального идентификатора. . Проблема в том, что элементы добавляются в список при каждом вызове из API, не перезаписывая старые, поэтому список продолжает расти при каждом вызове, и с бесконечным повторением показывается только одна лига (которая содержит две игры в этот день). При изменении даты новые данные добавляются в список вместе со старыми. Я хочу получить доступ к результатам на следующем изображении.
Если кто-то может помочь, спасибо.
@HiltViewModel
class MainViewModel @Inject constructor(private val liveMatchesRepository: MainRepository): ViewModel() {
private var _mainList = mutableStateListOf()
val mainList: MutableList = _mainList
}
data class MatchesByLeague(
val leagueId: Int, val leagueName: String, val leagueLogo: String,
val matchId: Int, val teamHomeName: String, val teamHomeLogo: String,
val teamAwayName: String, val teamAwayLogo: String,
val teamHomeR: String, val teamAwayR: String, val time: String
)
Я пытаюсь получить матчи по дате из футбольного API и показать их сгруппированными по лигам. Итак, я создал изменяемый список в ViewModel, чтобы хранить каждый элемент матча с идентификатором прибора в качестве уникального идентификатора. . Проблема в том, что элементы добавляются в список при каждом вызове из API, не перезаписывая старые, поэтому список продолжает расти при каждом вызове, и с бесконечным повторением показывается только одна лига (которая содержит две игры в этот день). При изменении даты новые данные добавляются в список вместе со старыми. Я хочу получить доступ к результатам на следующем изображении. [img]https://i.stack.imgur.com/ILU2M.jpg[/img] Если кто-то может помочь, спасибо. [code]@Composable fun TodayMatchesLazy( matchesList: List ) { val viewModel: MainViewModel = hiltViewModel() matchesList.forEach { viewModel.mainList .add(MatchesByLeague( leagueId = it!!.league!!.id!!, leagueName = it.league!!.name!!, leagueLogo = it.league.logo!!, matchId = it.fixture!!.id!!, teamHomeName = it.teams!!.home!!.name!!, teamHomeLogo = it.teams.home!!.logo!!, teamAwayName = it.teams.away!!.name!!, teamAwayLogo = it.teams.away.logo!!, teamHomeR = it.goals!!.home.toString(), teamAwayR = it.goals.away.toString(), time = it.fixture.date!!) ) } val groupedList = viewModel.mainList.groupBy { it.leagueId } if (groupedList .isNotEmpty()) { LazyColumn( modifier = Modifier .padding(20.dp) .fillMaxSize() ) { groupedList .forEach { (league, items) -> item { Row { TodayMatchesHeader(leagueItem = matchesList, league = league) } } itemsIndexed(items, itemContent = { index, item -> TodayMatchesRow( teamHomeName = item.teamHomeName, teamHomeLogo = item.teamHomeLogo, teamHomeR = item.teamHomeR, teamAwayName = item.teamAwayName, teamAwayLogo = item.teamAwayLogo, teamAwayR = item.teamAwayR, time = item.time ) } ) } } } } [/code] //ViewModel [code]@HiltViewModel class MainViewModel @Inject constructor(private val liveMatchesRepository: MainRepository): ViewModel() { private var _mainList = mutableStateListOf() val mainList: MutableList = _mainList } data class MatchesByLeague( val leagueId: Int, val leagueName: String, val leagueLogo: String, val matchId: Int, val teamHomeName: String, val teamHomeLogo: String, val teamAwayName: String, val teamAwayLogo: String, val teamHomeR: String, val teamAwayR: String, val time: String ) [/code]
Я пытаюсь получить матчи по дате из футбольного API и показать их сгруппированными по лигам.
Итак, я создал изменяемый список в ViewModel, чтобы хранить каждый элемент матча с идентификатором прибора в качестве уникального идентификатора. . Проблема...
Я пробую пример кода из контейнера thephpleague, найденного по адресу: и то, что у меня есть, довольно простое, ИМХО.
Примечание: автоматическая загрузка PSR-4 была настроена в композиторе.json и композитор du был выполнен.
require...
Швейцарский график. помощь! пожалуйста
Я работаю над планированием 8 витрин на этот год. У меня есть фреймы данных для каждой витрины с указанием ранга и конференции, откуда родом каждый игрок. На каждой витрине зарегистрировано разное количество...
Швейцарский график. помощь! пожалуйста
Я работаю над планированием 8 витрин на этот год. У меня есть фреймы данных для каждой витрины с указанием ранга и конференции, откуда родом каждый игрок. На каждой витрине зарегистрировано разное количество...
Я работаю над планированием 8 витрин на этот год. У меня есть фреймы данных для каждой витрины с указанием ранга и конференции, откуда родом каждый игрок. На каждой витрине зарегистрировано разное количество игроков, но это всегда разное количество...