ganghee / Android_Pattern

Repository, MVP, MVVM, AAC, Koin
0 stars 0 forks source link

2-4 RecyclerView setup하는 시점은 언제인가? #9

Closed ganghee closed 5 years ago

ganghee commented 5 years ago
    @SuppressLint("CheckResult")
    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)

        repository.getMarket()
            .subscribe { it ->
                repository.getTicker(it)
                    .subscribeOn(Schedulers.io())
                    .observeOn(AndroidSchedulers.mainThread())
                    .map {
                        it.filter {TickerResponse ->
                            TickerResponse.market.split("-")[0] == firstMarket
                        }
                    }
                    .subscribe({
                        displayData(it)
                    }, {
                    })
            }
    }
    private fun displayData(posts: List<TickerResponse>?) {
        posts?.let {
            val tickerList = mutableListOf<FormatTickers>()
            posts.forEach{
                tickerList.add(
                    it.toTicker(requireContext())
                )
            }
            rv_tickers.adapter = TickerAdapter(ctx, tickerList)
            rv_tickers.layoutManager = LinearLayoutManager(context, RecyclerView.VERTICAL, false)
        }
    }
ganghee commented 5 years ago

데이터를 가져오기 전에 RecyclerView setup을 해야한다. 데이터가 들어가는 틀을 형성한 후에 Repository를 이용하여 그 틀에 데이터를 넣자


@SuppressLint("CheckResult")
    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
            rv_tickers.adapter = TickerAdapter(ctx, tickerList)
            rv_tickers.layoutManager = LinearLayoutManager(context, RecyclerView.VERTICAL, false)
            ...        
}