거기에 몇 가지 해답을 알고 있지만, 나는 그들을 성공적으로 시도했다. color.xml
파일의 미리 정의 된 리소스 색상을 사용하여로드 할 때 아이콘 색상을 변경하는 코드가 있습니다. 다른 풍미를 위해 나는 다른 color.xml
파일이있다. 나는 color.xml
파일이 다른 색상이 성공적으로 사용됨에 따라 집어 들고 사용되는 것을 알고 있습니다. 앞서 말했듯이, 이전에는 Eclipse에서 작업 중이었고 Ant 빌드를 사용했습니다. 그러나 여러 라이브러리를 업그레이드 했으므로이 문제가 발생하기 위해 무언가가 변경되었을 수도 있습니다. 낯선 사람인 경우에도 Android Studio가 부족할 때 디버그에서 작동하지만 Gradle
을 사용하여 빌드하면 작동하지 않습니다. 여기 프로그래밍 방식으로 이미지의 색상 변경 안드로이드
ImageButton btnYes = new ImageButton(mContext);
btnYes.setPadding(0, 15, 15, 15);
btnYes.setTag(1);
Drawable yesDrawable = Utilities.getAndroidDrawable("form_ratingyes", mContext);
btnYes.setImageDrawable(yesDrawable);
btnYes.setFocusableInTouchMode(false);
btnYes.setBackgroundColor(Color.WHITE);
btnYes.setColorFilter(ContextCompat.getColor(mContext,R.color.rating_off));
color.xml 파일은 다음과 같다 :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Bullet Icon Color for (Forms, In Progress, Sync and Submitted Status)-->
<color name="bullet">#0378AF</color>
<!-- Navigation Bar Color-->
<color name="navigation_bar">#F68A33</color>
<!-- Menu Icon Color-->
<color name="menu_tint">#F68A33</color>
<color name="form_icons">#F68A33</color>
<!-- Rating Field Button Color -->
<color name="rating_on">#F68A33</color>
<color name="rating_off">#A2AAAD</color>
<!-- Action Button Color -->
<color name="login_button_default">#F68A33</color>
<color name="login_button_selected">#B0540B</color>
</resources>
을 그리고 이미지의 모습 이 :
기본적으로 투명한 "Y"와 외부 원을 가진 흰색 원입니다. 아이디어는 흰색이 "rating_on
"색으로 바뀝니다. 제대로 실행되면
는 다음과 같아야합니다
을 용의자 내가 그것을 추가 할 수 있습니다 Gradle을 파일이지만, 구축하지 안드로이드 스튜디오 사용을 않는 경우 너무 버전을 디버그?
저는 아이콘 색상을로드하는 여러 가지 방법을 시도했지만 성공하지 못했습니다. 또한 setColorFilter
으로 전화하기 전에 .getDrawable()
을 붙이려고했습니다. 안타깝게도 Android Studio에서 작동하기 때문에 디버깅하기가 어렵습니다. 실제 APK를 생성 할 때만 실패합니다.