반응형
이미지 로딩 라이브러리 중 하나인 Colil을 Compose UI에서 로딩 시, 실패했을 경우의 Error를 확인하기 위한 방법입니다.
val painter = rememberAsyncImagePainter(
model = ImageRequest.Builder(context).data(item.imageUrl)
.placeholder(R.drawable.blank_ad).build()
)
인자로 받은 item의 imageUrl을 통해 이미지를 로딩합니다.
물론 manifest에 인터넷 사용 권한이 허가되어 있는지 또한 반드시 체크해 주세요.
로딩했는데, placeholder의 Drawable로 표시되면 뭔가 문제가 있는 것이겠지요?
val state = painter.state
painter의 state 값을 가져옵니다.
해당 변수는 현재 이미지 로딩 상태에 대한 mutableState 변수로서 Error 발생 여부 확인이 가능합니다.
if (state is AsyncImagePainter.State.Error) {
Lo.g("Error loading image: ${state.result.throwable}")
}
위 코드를 통해 에러 내용을 이제 확인해 볼 수 있습니다.
반응형