작성
·
183
0
해당 강의가 너무 도움이 되어!! 다른 카카오 오픈 api를 통해 다른 어플을 개발하고 있습니다!
다만 다음 부분에서 이해가 덜 되어 에러가 발생하고 있습니다!
제가 연결하고 있는 api의 page(결과 페이지 번호)는 최대 45, size(한 페이지당 보여질 문서의 개수)는 최대 15여서 다음과 같이 설정하였으나, load 부분에서 params.loadSize 가 계속 45가 나와 최대 사이즈를 초과했다는 에러가 발생합니다
override fun searchPagingFood(query: String): Flow<PagingData<Restaurant>> {
val pagingSourceFactory = { SearchFoodPagingSource(query)}
return Pager(
config = PagingConfig(
pageSize = PAGING_SIZE, //15
enablePlaceholders = false,
maxSize = PAGING_SIZE * 3 //15 * 3
),
pagingSourceFactory = pagingSourceFactory
).flow
}
val response = SearchFoodApi.create().searchFood(
query, "FD6, CE7", "126.923460283882",
"37.5803504797164", 10000, pageNumber, params.loadSize
)
책 검색 api와 똑같은 개념이지만, page와 size의 단위가 달라 헷갈립니다!!
이럴 경우에는 pageSize와 maxSize를 어떤 범위로 설정하고, 왜 계속 params.loadSize가 45가 나오는지 이해가 되지 않습니다!!
page의 최대값은 45이고, size는 최대값이 15입니다.
어떻게 설정해야하는지 알려주시면 감사하겠습니다 ㅠㅠㅠㅠㅠㅠ
답변 1
0
책검색 API는 받아올 아이템 갯수와, 몇번째 페이지인지를 전달합니다. Paging은 이 값을 자기가 계산해서 전달하게 되는 것이죠. params.loadSize를 계산하는 부분은 BookSearchPagingSource이기 때문에 Practice8B를 다시 학습하시면서 PagingSource의 사용법과 원리를 정확히 파악하시는게 중요할 것 같습니다.