我試圖在一個onDraw()方法中保存Canvas對象。 這是因爲我在onDraw方法中使用了foreach循環,導致: canvas.DrawText(textitem,x,y,textpaint);
(我必須這樣做,因爲IM周圍繪製一個蒙面區域中的文本)在onDraw()中保存畫布;
什麼即時通訊正試圖是這樣的:
@Override
public void onDraw(Canvas canvas)
{
if (hasrun = false)
{
for(CustomTextViewDrawItem item : drawItemList)
{
canvas.drawText(item.Text, item.X, item.Y, textPaint);
}
if (eLabel.backgroundGradient != null)
{
canvas.drawPath(path, fillPaint);
}
canvas.save();
savedCanvas = canvas ;
}
else
{
canvas = savedCanvas;
}
hasrun = true;
super.onDraw(canvas);
}
調試,當我看到它看起來不錯,但出來空。 什麼是最好的方式來得到這個工作?
你怎麼從保存期望()函數?也許你誤解了它是如何工作的。 –
是的老鼠是對的,我想你誤解了canvas.save()。 – user370305
你想要做什麼?請將您添加'Canvas'的地方發佈到您的活動中,以及如何聲明兩個畫布字段。 –