마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

glide 라이브러리와 setCompoundDrawables(null, 여기, null, null)

0 추천

setCompoundDrawables(null, 여기에 .load(R.drawable.cancel )로드 처리된 이미지 파일을 넣고 싶습니다. , null, null)

Glide.with(this)
                .load(R.drawable.cancel)
                .override(32, 32)
                .into(search.setCompoundDrawables(null, this, null, null))

구글링, 마스터qna검색을 해봤는데, 이 부분에 대해서 언급하는 분이 없었습니다.

it이나 this처럼 뭔가 load처리된 이미지를 가리키는 명령어는 없나요?

없다면 어떻게 해줘야 할까요?

상쾌한 (1,890 포인트) 님이 2021년 4월 20일 질문

1개의 답변

+1 추천
 
채택된 답변
쎄미 (162,410 포인트) 님이 2021년 4월 20일 답변
상쾌한님이 2021년 4월 20일 채택됨
답변 감사합니다. 읽어보고 오겠습니다. ^^ 훑어보고 왔습니다. 그런데, 이걸로 제 문제를 해결할 수 있는 것인지 잘 모르겠습니다. 사용한다면, targets를 사용해야 할 것 같습니다만... 아직 감이 잘 오지 않는것 같습니다. 아~ 이거 다음에 알아야할 자료가 하나 더 있었네요? 마침 그 자료를 갖고 있었는데, 그 자료는 앞의 내용이 생략되어 있었고, 쎄미님 것은 그 앞의 내용이네요. 둘 다 중국어로된 자료인데, 그 둘이 하나네요. ㅎㅎ 감사합니다.
직접 예제 만들어보면 감이 올 겁니다 ㅎㅎ
방금 막 만들었는데, 잘 될런지 모르겠네요. 배운대로라면 문제 없어보이는데... 메모리 관련 문제라... 효과가 있는지 없는지 확인하기가 어려울 것 같아요.

문제가 발생했습니다.

이미지값이, 텍스트뷰의 drawableTop속성에 초기화 되지 않더라구요. 텍스트뷰에 출력되어야할 이미지가 출력되지를 않습니다. 뭐가 문제일까요?
참고로 오류는 없었습니다.

private lateinit var search : TextView

온크리에이트 영역
setContentView(R.layout.activity_main)

search = findViewById(R.id.search)
glide1(R.drawable.search, search)

액티비티 영역
    fun glide1(load: Int, v: TextView) {
        Glide.with(this)
                .load(load)
                .override(32, 32)
                .into(object : CustomViewTarget<TextView, Drawable>(v) {

                    override fun onResourceReady(resource: Drawable, transition: Transition<in Drawable>?) {
                        v.setCompoundDrawables(null, resource, null, null)
                    }

                    override fun onLoadFailed(errorDrawable: Drawable?) {
                        TODO("Not yet implemented")
                    }

                    override fun onResourceCleared(placeholder: Drawable?) {
                        v.setCompoundDrawables(placeholder, placeholder, placeholder, placeholder) <-- 리소스 해제하는 방법도 잘 모르겠네요.
                    }
                })
    }
textview 사이즈가 너무 작은게 아닌지, drawable이 잘 넘어오고 있는지 확인해보면 되지 않을까요?
...