button与图像,ImageButton和可点击的ImageView之间的区别?
Button
与图像, ImageButton
和可点击的ImageView
有什么区别吗?
这大概只包含了一部分差异,但实际上看一下Android Source树来查看究竟发生了什么会有所帮助。
ImageButtons具有推送状态,作为可点击的图像不会。 您也无法为ImageButton调用setText,您可以使用常规button。
他们都是从观点出发,但是看下面的延伸链可能会有所帮助。
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的文档,你可以看到Button
是从TextView
派生的。 另一方面ImageButton
是从ImageView
派生的。 所以基本上,一个Button
可以有文本并且是可点击的,而ImageButton
在设置图像方面则更加灵活。 它有一个Button
基类,像setImageURI
, Button
没有。 这两者之间的区别之一,只是一个普通的ImageView
是你可以有button状态,这是在Button
和ImageButton
文档中解释。
ImageView = Display Images (android:src)
ImageButton = Diaplay
Images作为ImageButton = Diaplay
并get click
效果作为button(android:src)
,不能设置文本。
Button = set text and (android:background)
在以前的答案中没有提到的另一个方面是(例如)列表项视图内的用法。 如果你embedded一个button或图像button,列表项的其余部分将不会收到触摸事件。 但是,如果您使用ImageView,它会。
button instanceof ImageButton == false; imageButton instanceof Button == false; button instanceof TextView == true; imageButton instanceof ImageView == true;