2017-10-23 1 views
-2

ImageView와 ImageButton 사이에 약간 혼란 스럽습니다. 둘 다 대부분 같은 XML 속성을 가지고 있다고 생각합니다. ImageButton 대신 ImageView를 사용하면 응용 프로그램에 어떤 효과가 있습니까?ImageButton과 ImageView를 구별 할 수 있습니까?

+0

기본적으로 ImageButton에는 null이 아닌 배경이 있습니다. 이 점을 제외하고는 차이점이 없습니다. –

+0

그들 사이에 차이가 없다면 왜 둘 모두 분리되어 있습니까? #peter haddad –

+0

ImageView의 경우 clickevent에 onClick 속성을 추가해야합니다. 그러나 버튼의 속성을 제공하므로 ImageButton을 사용하지 않아도됩니다. –

답변

1

ImageButton & ImageView의 차이점은 기본 스타일뿐입니다. 기본적으로 ImageButton에는 null이 아닌 배경이 있습니다. 하여 ImageButton의 기본 속성 :

  • ImageButton.onSetAlpha() 메소드는 항상 false를 반환합니다.
  • 스케일 유형이 가운데로 설정되어 있고
  • 항상 집중되어 있습니다.
0

사용자가 누르거나 클릭 할 수있는 이미지 (텍스트 대신)가있는 단추를 표시합니다. 기본적으로 ImageButton은 일반적인 Button 모양을하고 다른 버튼 상태에서 색상이 변경되는 표준 버튼 배경을 사용합니다. 버튼 표면의 이미지는 XML 요소의 android : src 속성이나 setImageResource (int) 메소드에 의해 정의됩니다.

의 Src ImageButton

하여 ImageButton는 이미지 뷰에서 상속됩니다. 기본적으로 이미지 버튼에는 스타일로 imageButtonStyle이 있습니다. ImageButton의 소스 코드를 살펴보십시오.

public class ImageButton extends ImageView { 
public ImageButton(Context context) { 
    this(context, null); 
} 

public ImageButton(Context context, AttributeSet attrs) { 
    this(context, attrs, com.android.internal.R.attr.imageButtonStyle); 
} 

public ImageButton(Context context, AttributeSet attrs, int defStyleAttr) { 
    this(context, attrs, defStyleAttr, 0); 
} 

public ImageButton(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { 
    super(context, attrs, defStyleAttr, defStyleRes); 
    setFocusable(true); 
} 

@Override 
protected boolean onSetAlpha(int alpha) { 
    return false; 
} 

@Override 
public CharSequence getAccessibilityClassName() { 
    return ImageButton.class.getName(); 
} 
} 
관련 문제