gpt4 book ai didi

Android Canvas.drawText 不渲染

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:13:08 24 4
gpt4 key购买 nike

我有一个自定义 View ,可以在屏幕上绘制几个不同的东西。每一个都有自己的绘画对象。除了文字,一切都很好。它在 Gingerbread 中工作得很好,但 ICS+ 没有文本。

这是我的绘制方法:

protected void onDraw(Canvas canvas)
{
canvas.save(Canvas.MATRIX_SAVE_FLAG);
canvas.scale(getWidth(), getHeight());

drawGrid(canvas);
drawHeader(canvas);
drawSelected(canvas);
drawDays(canvas);
drawToday(canvas);

canvas.restore();
}

Grid、Selected 和 Today 工作正常。 Header 和 Days 是文本绘图,它们不起作用。

这里是 drawHeader 方法:

private void drawHeader(Canvas canvas)
{
canvas.drawText("Sun", DAYS[0], .05f, paintDaysOfTheWeek);
canvas.drawText("Mon", DAYS[1], .05f, paintDaysOfTheWeek);
canvas.drawText("Tues", DAYS[2], .05f, paintDaysOfTheWeek);
canvas.drawText("Wed", DAYS[3], .05f, paintDaysOfTheWeek);
canvas.drawText("Thurs", DAYS[4], .05f, paintDaysOfTheWeek);
canvas.drawText("Fri", DAYS[5], .05f, paintDaysOfTheWeek);
canvas.drawText("Sat", DAYS[6], .05f, paintDaysOfTheWeek);

canvas.drawLine(.01f, .0f, .99f, .0f, paintMediumBlack);
canvas.drawLine(.01f, .07f, .99f, .07f, paintMediumBlack);
}

有什么想法吗?

最佳答案

我通过添加解决了这个问题

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
setLayerType(LAYER_TYPE_SOFTWARE, paint)

到我的自定义 View 。不确定我为什么需要它,如果有人能解释一下,那就太好了。

关于Android Canvas.drawText 不渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11743816/

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