Я пытаюсь использовать API из thesportsdb для отображения lastmatch из конкретной лиги. В своем обзоре я хочу показать значок команды для каждой команды, но когда я запрашивал API Lastmatch, он не включал значок команды, только идентификатор каждой команды, и если я хочу показать значок, он требует от меня запроса команды профиль, который включает в себя URL для значка команды.
Поскольку я новичок в rxJava, я все еще знакомлюсь с ним. в некоторых сообщениях предлагается использовать flatmap, но новичку вроде меня сложно реализовать его.
это сервис по модернизации:
interface FootballRest {
@GET("eventspastleague.php")
fun getLastmatch(@Query("id") id:String) : Flowable<FootballMatch>
@GET("lookupteam.php")
fun getTeam(@Query("id") id:String) : Flowable<Teams>
}
Я использовал шаблон репозитория
class MatchRepositoryImpl(private val footballRest: FootballRest) : MatchRepository {
override fun getFootballMatch(id: String): Flowable<FootballMatch> = footballRest.getLastmatch(id)
override fun getTeams(id: String): Flowable<Teams> =
footballRest.getTeam(id)
}
и это ведущий, который выполняет вызов и отправляет данные в представление:
class MainPresenter(val mView : MainContract.View, val matchRepositoryImpl: MatchRepositoryImpl) : MainContract.Presenter{
val compositeDisposable = CompositeDisposable()
val requestMatch = matchRepositoryImpl.getFootballMatch("4328")
val requestTeam = matchRepositoryImpl.getTeams()
override fun getFootballMatchData() {
compositeDisposable.add(matchRepositoryImpl.getFootballMatch("4328")
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe{
mView.displayFootballMatch(it.events)
})
}
Пока я показываю только результат последнего матча, но я также хочу показать команду со значками в списке.