使用framlayout的imageview的background与setImageBitmap冲突
时间: 2023-06-12 19:07:24 浏览: 89
在使用 FrameLayout
布局中的 ImageView
控件时,如果同时设置了 background
和 setImageBitmap
属性,可能会出现冲突,导致显示异常。这是因为 background
属性会覆盖掉 setImageBitmap
所设置的图片,导致图片无法显示。
解决这个问题的方法有两种:
去掉
background
属性:如果不需要设置background
,可以直接去掉该属性,只设置setImageBitmap
,这样图片就可以正常显示了。使用
ImageView
的src
属性:src
属性是设置ImageView
显示的图片,而background
则是设置ImageView
的背景颜色或背景图片。因此,如果要同时设置背景和显示的图片,可以将background
改为设置ImageView
的src
属性,这样就不会与setImageBitmap
冲突了。
以下是示例代码:
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/image_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/image"
android:background="@color/background_color" />
</FrameLayout>
其中 @drawable/image
是要显示的图片资源,@color/background_color
是要设置的背景颜色或背景图片资源。通过设置 src
属性,图片就可以正常显示了。
相关推荐
















