2011-11-08 4 views
2

로더 란 무엇인지 이해하려고합니다. 누구나 예제를 공유 할 수 있습니까? 우리가 언제 활동이나 단편에서 여러 로더를 사용할 수 있는지 모르겠습니다. 구현할 여러 로더의 한 인스턴스를 파악할 수 없습니다.활동이나 조각에서 여러 로더를 사용하는 경우는 언제입니까?

+0

자세한 내용은이 [** 블로그 게시물 **] (http://www.androiddesignpatterns.com/2012/07/understanding-loadermanager.html)에서 'LoaderManager'를 확인하십시오. 도움이된다면 도움이 될 것입니다.) –

답변

5

로더는 일반적으로 목록을 채우는 데 사용되지만 전체 호스트에 사용할 수 있습니다. 기본적으로 별도의 스레드에서 수행 할 작업은 로더에서 수행 할 수 있습니다. 네트워크를 여러 번 호출해야하고 결과를 얻을 때 다른 작업을 수행해야하는 경우 여러 대의 로더를 사용하는 것이 좋습니다. 또한 하나의 로더를 사용하여 목록으로 커서를 채우고 다른 로더를 사용하여 네트워크 호출을 수행 할 수 있습니다.

+0

그래서 하나의 활동으로 모든 다운로드 파일을 나열하면 여러 개의 로더를 사용할 수 있으며 하나의 로더가 항목을 나열하는 데 사용되며 다른 하나는 파일을 다운로드하는 데 사용됩니까? –

+0

물론, 원한다면. 둘 다 "로딩"작업입니다. 비록 파일 다운로드를 위해, 대신 IntentService를 사용하는 것이 좋습니다. 사용자가 작업을 종료하더라도 파일은 완료 될 때까지 다운로드됩니다. –

0

활동에서 여러 로더를 사용할 수있는시기가 언제인지 또는 조각인지 알 수 없습니다. 내가 구현하는 여러 로더의 한 인스턴스를 알아낼 수 없습니다.

여기 있습니다!

뉴스 앱을 만들고 있다고 가정 해 봅시다.

뉴스를 표시하는 실행 프로그램 ActivityListView/RecyclerView이 있습니다. listItem에는 각각 ImageView 하나의 썸네일 이미지가 표시되며 두 개의 메시지는 TextViews - 뉴스 기사 제목은 &입니다 (예 : 정치, 스포츠, 기술).

이제 뉴스를 얻으려면 API를 사용하여 원격 서버 (웹 사이트)에서 데이터를 가져와야합니다. 그리고 데이터를 가져 오면 해당 웹 사이트는 JSON 형식의 데이터를 반환합니다.

해당 웹 사이트에 연결하고 JSON을 가져와 해당 JSON을 구문 분석해야합니다 (예 : 뉴스 기사 제목, 뉴스 기사 카테고리, thumbnail_URL 추출). 추출 된 thumbnail_URL에서 미리보기 이미지를 다운로드하고 데이터를 ListView/RecyclerView에 바인딩해야합니다.

이 경우 JSON을 구문 분석 할 때 Loader을 사용할 수 있습니다. 추출 된 thumbnail_URL에서 축소판을 다운로드하려면 다른 Loader을 사용하십시오.

관련 문제