Imageview和Imagebutton之间操作系统占用内存的差异



我最近在我的一个项目中注意到,在某些布局上,我定义了ImageButton,而在某些布局中,我定义ImageView

在相同的角色和任务下,两者都能很好地工作。

但是,

我的问题是;有合适的方法吗?如果不是的话,主要的区别是什么。还让我知道定义imageviewimagebutton有什么与内存相关的差异吗?

哪个组件在运行时占用更多内存。

提前谢谢。

ImageButton是一个ImageView,它本质上只是为图像按钮提供默认样式,而图像按钮默认样式提供按钮背景可绘制。

在其他一切保持不变的情况下,将没有背景的ImageView更改为ImageButton会消耗更多内存,因为背景会占用一些内存。如果你担心,可以使用记忆分析工具来找出差异是否显著。

使用哪一个:如果您想要具有按钮样式的ImageView,请使用ImageButton。如果只想显示图像,请使用ImageView

ImageView扩展View

其中作为

ImageButton扩展了ImageView。

ImageView用于设置来自不同来源的图标,其中,作为ImageButton,显示一个带有用户可以按下或单击的图像(而不是文本)的按钮。

两个视图的内存分配取决于图像src,否则在内存方面没有显著差异。

最新更新