gpt4 book ai didi

单个自定义 View 中的 Android 两个 Canvas (在 onDraw() 中)

转载 作者:行者123 更新时间:2023-11-29 16:05:47 30 4
gpt4 key购买 nike

我有自定义 View 。

其中我有 onDraw() 函数。

  @Override
public void onDraw(Canvas canvas)
{

canvas.drawLine(0,0,600,200,black);

}

在这个 onDraw() 中我想再创建一个 canvas 。假设 canvas1。

  @Override
public void onDraw(Canvas canvas)
{

canvas.drawLine(0,0,600,200,black);

canvas1.drawLine(0,0,500,100,Red);
}

然后在按钮 Click 上,我想让 canvas1 图可见和不可见。但我不想再重画了。
第一件事:是否可以在 onDraw() 中再创建一个 Canvas ? *并使其可见和不可见。*

如果您有任何其他方法可以做到这一点,请建议我,但除了再次解决 redraw() 之外。我不能 redraw() 我的情况有问题。

希望你已经理解了我的问题? 请建议我。

最佳答案

要使用另一个 Canvas ,您需要在第二个 Canvas 上绘制位图,然后在 Canvas 上绘制它

Bitmap bitmap ;
Canvas c2 = new Canvas(bitmap);

@Override
public void onDraw(Canvas canvas)
{

canvas.drawLine(0,0,600,200,black);

// Draw on Second canvas
c2.drawLine(0,0,500,100,Red);
// Draw second canvas (c2) to first one
canvas.drawBitmap(bitmap, 0, 0, null);

}

关于单个自定义 View 中的 Android 两个 Canvas (在 onDraw() 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18628384/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com