반응형
안드로이드 리스트 뷰에 이미지를 넣는 방법 입니다.
처음에는 Adaptor의 getView 메소드에서 쓰레드로 비동기 처리하려고 했는데 에러가 나서 잘 되지 않았습니다.
리스트의 이미지가 빠지기도 하고, 스크롤 하면 에러나기도 하고 정확하게 왜 안되는지는 모르겠습니다.
피카소 라이브러리
검색해보니 피카소 라이브러리를 사용하면 다운로딩, 캐싱, 메모리 관리 등 어려운 것을 자동으로 처리 해준다고 합니다.
build.gradle
기존 파일에서 라이브러리를 추가 합니다.
implementation 'com.squareup.picasso:picasso:2.8'
UserAdapter.java
getView 메소드에서 사진 부분을 피카소 라이브러리를 사용해서 처리
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = layoutInflater.inflate(R.layout.item_talk, null);
// 사진
if (userList.get(position).getUserPictureUrl() != null) {
Picasso.get()
.load(userList.get(position).getUserPictureUrl().toString())
.into((ImageView) view.findViewById(R.id.imageViewUserPicture));
}
}
※ 이미지는 URL 통해서 불러왔는데, 앱 내부 파일(R.raw.user) 방법은 다른 게시물로 따로 올립니다.
반응형
'개발 - 안드로이드' 카테고리의 다른 글
안드로이드 ListView 멀티 아이템 (0) | 2023.10.03 |
---|---|
안드로이드 raw 이미지 Uri 얻어오기 (0) | 2023.10.03 |
안드로이드 Notification 클릭시 Fragment 이동 (0) | 2023.09.25 |
안드로이드 editText 라인 수에 따른 자동 높이 조절 (0) | 2023.09.14 |
안드로이드 TabLayout 서브페이지에서 서브페이지 이동시 Tab 인덱스 변경 방법 (0) | 2023.09.11 |