如果使用
val bitmap = MediaStore.Images.Media.getBitmap(contentResolver, selectedPhotoUri)
val bitmapDrawable = BitmapDrawable(bitmap)
select_button.setBackgroundDrawable(bitmapDrawable)
一切正常(按钮成为加载的图像),但如果您在按钮顶部添加一个 CircleImageView 并使用以下代码:
val bitmap = MediaStore.Images.Media.getBitmap(contentResolver,
selectedPhotoUri)
profile_image.setImageBitmap(bitmap)
profile_image.alpha = 0f
然后 CircleImageView 不会改变(保持透明)。
xml:
<de.hdodenhof.circleimageview.CircleImageView
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/profile_image"
android:layout_width="150dp"
android:layout_height="150dp"
app:civ_border_width="2dp"
app:civ_border_color="#FF000000"
app:layout_constraintBottom_toBottomOf="@+id/select_button"
app:layout_constraintEnd_toEndOf="@+id/select_button"
app:layout_constraintTop_toTopOf="@+id/select_button"
app:layout_constraintStart_toStartOf="@+id/select_button"/>
</android.support.constraint.ConstraintLayout>
如何使 circleImageView 接受位图值?
问题是我在 select_button 下有一个 CircleImageView 并且该按钮覆盖了图像。为了防止这种情况发生,您需要添加该行
按钮变为透明
最终代码: