이미지가있는 버튼, ImageButton 및 클릭 가능한 ImageView의 차이점은 무엇입니까?
Button
이미지 ImageButton
와 클릭 가능한 차이가 ImageView
있나요?
이것은 아마도 차이점의 일부만을 다루고 있습니다. 실제로 무슨 일이 일어나고 있는지 정확히보기 위해 Android 소스 트리를 살펴 보는 것이 도움이 될 것입니다.
ImageButtons에는 클릭 가능한 이미지가 아닌 푸시 상태가 있습니다. ImageButton에 대해 setText를 호출 할 수도 없습니다. 일반 버튼을 사용할 수도 있습니다.
그것들은 모두 뷰에서 파생되지만 다음 확장 체인을 보면 약간 도움이 될 수 있습니다.
java.lang.Object
↳ android.view.View
↳ android.widget.ImageView
↳ android.widget.ImageButton
대
java.lang.Object
↳ android.view.View
↳ android.widget.TextView
↳ android.widget.Button
차이는 미묘 할 수 있습니다. 이것을 이해하는 가장 직접적인 방법은 문서를 보는 것부터 시작하는 것입니다. 당신이 보면 버튼에 대한 문서 당신은이 볼 수 Button
에서 파생됩니다 TextView
. ImageButton
반면에 ImageView
. 따라서 기본적으로 a Button
는 텍스트를 포함 할 수 있고 클릭 할 수있는 반면 an ImageButton
은 이미지를 설정하는 방법에서 약간 더 유연합니다. a 가 아닌 ImageView
기본 클래스의 메서드가 있습니다 . 이 두 가지와 단순한 것의 차이점 중 하나는 및 문서 모두에서 설명하는 버튼 상태를 가질 수 있다는 것 입니다.setImageURI
Button
ImageView
Button
ImageButton
ImageView = Display Images (android:src)
ImageButton = Diaplay
이미지 imageView
와 get click
효과는 버튼 (android:src)
이며 텍스트를 설정할 수 없습니다.
Button = set text and (android:background)
이전 답변에서 언급되지 않은 또 다른 측면은 (예를 들어) 목록 항목보기 내에서의 사용법입니다. Button 또는 ImageButton을 포함하는 경우 나머지 목록 항목은 터치 이벤트를 수신하지 않습니다. 그러나 ImageView를 사용하면 가능합니다.
button instanceof ImageButton == false;
imageButton instanceof Button == false;
button instanceof TextView == true;
imageButton instanceof ImageView == true;
'Program Tip' 카테고리의 다른 글
C ++ RTTI를 사용하는 것이 바람직하지 않게 만드는 이유는 무엇입니까? (0) | 2020.11.11 |
---|---|
솔루션 전체에서 균일 한 버전 관리를위한 공유 AssemblyInfo (0) | 2020.11.11 |
MySQL Workbench 다크 테마 (0) | 2020.11.11 |
JSP 용 클래스를 컴파일 할 수 없음 : java.util.Map $ Entry 유형을 분석 할 수 없습니다. (0) | 2020.11.11 |
'perf stat'결과에서 stalled-cycles-frontend 및 stalled-cycles-backend는 무엇입니까? (0) | 2020.11.11 |