我正在使用一个自定义视图,其中有一个矩形,需要在边界之间绘制一个VectorDrawable。 我需要随时调整vectorDrawable的大小。 我已经在使用画布设置外部矩形,因此无法使用位图创建另一个画布。 这就是我在onDraw()里面所做的:
canvas!!.drawRect(mRect, mRadius!!,mRadius!!, mPaint)
vectorDrawable.mutate()
vectorDrawable.setBounds(mRect)
vectorDrawable.draw(canvas)
如果我尝试创建位图并创建新的画布对象:
var bmp = Bitmap.createBitmap(vectorDrawable.getIntrinsicWidth(),
vectorDrawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888)
var can : Canvas = Canvas(bmp)
然后看不到我的vectorDrawable。
请让我知道调整vectorDrawable大小的最佳方法。
答案 0 :(得分:0)
VectorDrawable旨在从XML扩展。如果您决定采用这种方式,则ConstraintLayout可能是最佳选择。下面的链接向您展示了如何以1:1或5:4的比例进行操作。
https://blog.stylingandroid.com/dynamic-vectordrawable-sizing/
祝你好运!