gpt4 book ai didi

android - 将图片绘制到 View 的 Canvas 上什么都不做

转载 作者:行者123 更新时间:2023-11-29 01:52:42 24 4
gpt4 key购买 nike

我正在尝试使用 android.graphics.Picture 来加速我的应用程序的某些绘图。然而,当我尝试重放它时,什么也没有发生,就好像 Picture 根本没有被绘制或者好像它没有记录任何东西。

这是我的绘图代码;为简单起见,我只是将所有内容移动到我的 ViewonDraw 方法中。

@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawColor(Color.RED);

Picture p = new Picture();
Paint paint = new Paint();

paint.setColor(Color.BLACK);
paint.setStyle(Style.STROKE);

Canvas c = p.beginRecording(100, 100);
c.drawColor(Color.WHITE);
c.drawLine(0, 0, 100, 100, paint);
p.endRecording();

p.draw(canvas);
canvas.drawPicture(p);
}

有了这个,我得到的只是一个完全红色的背景,没有别的;线条和 Picture 的白色背景都没有出现。

然后我尝试了发布在 http://www.java2s.com/Code/Android/2D-Graphics/DrawPicture.htm 的示例代码,也无济于事:没有任何显示,我得到的只是白色背景。

这发生在我的 Galaxy S2 (Android 4.1.2) 和模拟器 (4.2.2) 上。

最佳答案

在你的 Activity 中试试这个:

View view = new View(this);
Picture picture = new Picture();
Canvas c = picture.beginRecording(100, 100);
Paint p = new Paint();
c.drawColor(Color.WHITE);
p.setColor(Color.RED);
c.drawCircle(50, 50, 40, p);
picture.endRecording();
Drawable d = new PictureDrawable(picture);
view.setBackgroundDrawable(d);
setContentView(view);

你应该在白色背景上看到红色的小圆圈(在 2.3 模拟器上测试过)

关于android - 将图片绘制到 View 的 Canvas 上什么都不做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17002475/

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