施工后可以修改LinearGradient的结束坐标例如+/- 10f或设置为新的结束坐标吗?

问题描述

    @Override
    protected void onMeasure(int widthMeasureSpec,int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec,heightMeasureSpec);
        mWidth = this.getMeasuredWidth();
        mHeight = this.getMeasuredHeight();
        lg = new LinearGradient(0,(mHeight+1)/2,color0,color1,Shader.TileMode.CLMAP);
        paint.setShader(lg)
    }

我在Android Studio中收到此警告, “在绘制/布局操作期间避免对象分配(改为预分配和重用)”。 但是似乎没有像setYendCoord(float YendCoord)这样的函数。

如何避免创建新的LinearGradient,而是在onMeasure可能经常运行的情况下重用?我不知道如果继续生成新的LinearGradient是否会使用内存。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)