【Android/Java】src와 background의 차이
ImageView 또는 ImageButton으로 이미지 리소스를 설정할 때 사용
기본적으로는
background
로 자원을 지정하고 있었지만, 타인의 구현 소스에서는 src
를 사용하고 있었기 때문에 파악하고 있는 한의 차이를 확인한다.Stack Overflow 에서 같은 질문이 히트했지만 거기에서 발췌하면
배경 지정
<ImageButton
android:id="@+id/button"
android:layout_width="60dp"
android:layout_height="60dp"
android:background="@drawable/resource_button"/>
※실제의 세세한 조정은 생략
src 지정
<ImageButton
android:id="@+id/button"
android:layout_width="60dp"
android:layout_height="60dp"
android:src="@drawable/resource_button"
android:background="#00000000"/>
※실제의 세세한 조정은 생략
이 경우, 종횡은 60dp로 지정하고 있지만 자원 크기는 그것보다 크기 때문에 중간에 잘립니다. 만약 background 때와 같이 사이즈 조정하고 싶은 경우는
android:scaleType="fitCenter"
를 지정하면 OKStack Overflow로 돌아가지만
The src to an ImageView has additional features:
그렇듯이 src가 다양한 설정을 할 수있는 모습.
또한 배경은 동적으로 바꿀 수 있으며 Java
private ImageView view;
/*
* 中略
*/
view.setBackgroundResource(R.drawable.resource_button); //画像リソースを指定する場合
Drawable drawable = ResourcesCompat.getDrawable(getResources(), R.drawable.btn, null);
view.setBackground(drawable); //drawableファイルを設定する場合
view.setBackground(null); //リソースをクリアする場合
로 바꿀 수 있지만, 레이아웃 파일로 src 지정하면 위의 처리를 실행해도 반영되지 않는다. background 지정 내용의 전면에 src 지정 내용이 표시되는 모습.
아래는 배경을 검정색으로 지정하고 src에 자원을 지정한 경우.
<ImageView
android:layout_width="60dp"
android:layout_height="60dp"
android:src="@drawable/ic_launcher_foreground"
android:background="@color/black"/>
결론
시도한 환경
Reference
이 문제에 관하여(【Android/Java】src와 background의 차이), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tarobu612/items/3dbdffdd2e594b2c6f99텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)