toBitmap扩展函数简化了将Drawable转换为Bitmap的过程。 fun Drawable.toBitmap(): Bitmap { if (this is BitmapDrawable) { return bitmap } val bitmap = Bitmap.createBitmap(intrinsicWidth, intrinsicHeight, Bitmap.Config.ARGB_8888) val canvas = Canvas(bitmap) setBounds(0, 0, canvas.width, canv...
val bitmap = (drawable as BitmapDrawable).bitmap 最后,将Bitmap对象设置给ImageView。可以使用setImageBitmap()方法将Bitmap对象设置给ImageView。例如,如果有一个名为"imageView"的ImageView,可以使用以下代码: 代码语言:txt 复制 imageView.setImageBitmap(bitmap) 这样,就可以从drawable中获取Bitmap并将其设置...
drawable.setBounds(0, 0, width, height) val bitmap = Bitmap.createBitmap(width, height, Config.ARGB_8888) drawable.draw(Canvas(bitmap)) drawable.setBounds(oldLeft, oldTop, oldRight, oldBottom) 但如果使用 DrawableKt,只需要如下操作即可,应用代码再次被压缩成了一行: // DrawableKt fun toBitma...
例如:String.toUri() Day 27:Drawable.toBitmap() 轻松转换 如果您曾经将 Drawable 转换为 Bitmap,那么您知道需要多少样?Android KTX 具有一系列功能,可以使您的代码在使用图形包中的类时更加简洁。 Day 28:Sequences, lazy 和 generators 序列是从未存在的列表。序列是迭代器的表亲,一次只能懒散地产生一个值。...
val bitmap = drawableToBitmap(drawable) return BitmapShader(bitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP).apply { var scale = 1.0f if (mShapeType == ShapeType.SHAPE_CIRCLE) { scale = (mWidth * 1.0f / Math.min(bitmap.width, bitmap.height)) ...
tv4!!.background = BitmapUtil.addStateDrawable1(context, myGrad3, myGrad4, myGrad4, myGrad4) public static StateListDrawable addStateDrawable1(Context context, Drawable idNormal, Drawable idPressed, Drawable idFocused, Drawable idUnable) { ...
(bitmap) // 旋转Canvas val pivotX = intrinsicWidth.toFloat() / 2f val pivotY = intrinsicHeight.toFloat() / 2f canvas.rotate(angle, pivotX, pivotY) // 重新设置Drawable的bounds,以适配Bitmap drawable.setBounds(0, 0, canvas.width, canvas.height) // 绘制Drawable到Canvas上 drawable.draw(...
Day 27:Drawable.toBitmap() 轻松转换 如果您曾经将 Drawable 转换为 Bitmap,那么您知道需要多少样?Android KTX 具有一系列功能,可以使您的代码在使用图形包中的类时更加简洁。 Day 28:Sequences, lazy 和 generators 序列是从未存在的列表。序列是迭代器的表亲,一次只能懒散地产生一个值。这在使用 map 和 fif...
private fun getBitmapShader(): BitmapShader { val bitmap = drawableToBitmap(drawable) return BitmapShader(bitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP).apply { var scale = 1.0f if (mShapeType == ShapeType.SHAPE_CIRCLE) { ...
Day 27:Drawable.toBitmap() 轻松转换 如果您曾经将 Drawable 转换为 Bitmap,那么您知道需要多少样?Android KTX 具有一系列功能,可以使您的代码在使用图形包中的类时更加简洁。 Day 28:Sequences, lazy 和 generators 序列是从未存在的列表。序列是迭代器的表亲,一次只能懒散地产生一个值。这在使用 map 和 fif...