将位图绘制到ImageButton上

时间:2014-12-29 01:37:09

标签: android bitmap android-canvas android-button android-drawable

我正在制作一款游戏,并遇到了一些我无法弄清楚的事情。我有一个ImageButtons列表,我正在迭代并在每个上面绘制一个Bitmap。 Bitmap本身绘图很好,但我也想在这些位图上绘制矩形。

相关代码(如果这还不够,我可以发布更多内容):

for (int i = 1; i < group.getChildCount(); i++) {
        ImageButton button = (ImageButton) group.getChildAt(i);
        Bitmap bitmap = getBackgroundImage();
        bitmap = bitmap.copy(Bitmap.Config.ARGB_8888, true);

        Canvas canvas = new Canvas(bitmap);

        for (int j = 0; j < obstacles.get(i - 1).size(); j++) {
            Obstacle o = obstacles.get(i - 1).get(j);
            canvas.drawRect((float) o.getXLower(), (float) o.getYLower(),
                    (float) o.getXUpper(), (float) o.getYUpper(), paint);
        }

        Drawable background = new BitmapDrawable(getResources(), bitmap);

        button.setBackground(background);
    }

位图本身出现在按钮上,但是我想绘制的矩形没有被绘制。

1 个答案:

答案 0 :(得分:0)

你会打电话吗

ImageButton.setImageBitmap(Bitmap)

代替?