Java-绘制位图很慢

Java-绘制位图很慢,java,android,bitmap,Java,Android,Bitmap,我正在使用画布和视图将位图绘制到屏幕上。当我打开屏幕时,图像的定位会出现一系列的延迟,就好像我在看着电脑慢慢思考如何放置这些点一样 首先是这样的: 然后: 最后: 我知道我给的描述有点难,但如果有人有任何想法,请告诉我 编辑: 在没有看到任何代码的情况下,很难确切地知道您的问题是什么。 但是一个想法是确保在将图像绘制到屏幕时使用双缓冲 这项功能的基本描述:在构建图像时将其从屏幕上绘制,然后在完成后将其移动到视图中。但是,这不会加快绘制过程。请在画布上绘制位图的位置添加代码,否则将无法提供帮助。是

我正在使用画布和视图将位图绘制到屏幕上。当我打开屏幕时,图像的定位会出现一系列的延迟,就好像我在看着电脑慢慢思考如何放置这些点一样

首先是这样的:

然后:

最后:

我知道我给的描述有点难,但如果有人有任何想法,请告诉我

编辑:


在没有看到任何代码的情况下,很难确切地知道您的问题是什么。 但是一个想法是确保在将图像绘制到屏幕时使用双缓冲


这项功能的基本描述:在构建图像时将其从屏幕上绘制,然后在完成后将其移动到视图中。但是,这不会加快绘制过程。

请在画布上绘制位图的位置添加代码,否则将无法提供帮助。是否在主UI线程上加载位图?我添加了代码,但不知道是否在主UI线程上加载,不确定这意味着什么。我有多个屏幕加载位图,如果这是你的意思?
public class LoseScreen extends View {

    @Override protected void onDraw(Canvas canvas) {

    paint.setColor(Color.GREEN);

    canvas.drawBitmap(box, null, menuBox, null);

    menuBox.set(screenWidth / 2 - menuWidth / 2, screenHeight / 2 - menuHeight / 2, menuBox.left + menuWidth, menuBox.top + menuHeight);
    tryagainBounds.set(screenWidth / 2 - tryagainWidth / 2, menuHeight / 2, tryagainBounds.left + tryagainWidth, tryagainBounds.top + tryagainHeight);


    canvas.drawText("    Score:", 100 * density, menuBox.top + 150 * density, finalScorePaint);
    canvas.drawText(finalScoreString, 225 * density, menuBox.top + 150 * density, finalScorePaint);

    canvas.drawText("Highscore:", 100 * density, menuBox.top + 200 * density, finalScorePaint);
    canvas.drawText(HighScore.toString(), 225 * density, menuBox.top + 200 * density, finalScorePaint);

    canvas.drawBitmap(tryagain, null, tryagainBounds, null);