안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요 초보개발자 인사 드립니다.
일전에 질문을 한번 드렸던게 백그라운드만 selector로 구현하고
DrawableTop 에 Icon을 넣어서 버튼을 구현하였고 자바소스상에서
해당 객체를 가져와서 SetAlpha 값 처리를 하려고 하였으나,
mButton.getDrawable().setAlpha(30);
이렇게 적용을 하면 Icon이 아닌 Background 이미지에 alpha값이 적용이 됩니다.
어느분께서, getCompoundDrawables(); 함수를 이용하여서 처리하라고 하셨는데
어떻게 가져와서 써야되는지 잘 모르겠습니다.
반환형이 Drawable[] 이던데, 리턴값중에서 TopDrawable만 가져오려고 하면 어떻게 구현을 해야 될까요?
Drawable[] dr = mButton.getCompoundDrawables();




getCompoundDrawables 는 left, top, right, bottom 의 drawable을 반환합니다.
top을 사용하시려면 인덱스를 1로 해서 받으면 되고.
아니면 4개의 배열에서 null 검사를 해서 null 아닌 인덱스의 drawable을 사용하시면 될 것 같습니다.