2010-07-19 4 views
0

사용자가 SDCard의 자원으로 내 응용 프로그램의 UI를 변경할 수있는 몇 가지 조작을 사용하고 있습니다. 그건 정말 쉽고 특별하지 않습니다. 그냥 "setImageDrawable"또는 "setImageBitmap"을 사용합니다. 정말 멋진 내 모든 사용자가 UI를 사용자 정의 행복Android : 코드로 압축/초점 조정 된 자원 변경

http://developer.android.com/reference/android/widget/ImageButton.html

.

하지만 이제 버튼의 눌렀거나 집중된 ressource도 변경하고 싶습니다!

이제 클릭하면 아무 것도 볼 수 없으며 클릭 횟수는 10 회입니다. 그리고 더 문제가 있습니다. 그건 정말 직관적이지 않습니다.

그래서 난 ... 프로그램도 누를/집중 상태를 변경

애니 아이디어 제안을 하시겠습니까?

답변

5

모든 ImageButton에 BitmapDrawables 대신 StateListDrawable을 만들어야합니다.

ImageButton ib = new ImageButton(this); 
StateListDrawable sl = new StateListDrawable(); 
sl.addState(new int[] { android.R.attr.state_enabled }, yourDefaultDrawableHere); 
sl.addState(new int[] { android.R.attr.state_pressed, android.R.attr.state_selected }, yourImageDrawableHere); 
ib.setImageDrawable(sl);