0

我有一个按钮,当我单击它时,我想要创建 flag.png 图像并将其放置在画布上的任何位置

这是我的标志按钮代码

        // the flag button
    Button flag = (Button) findViewById(R.id.btnFlag1);
    flag.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
        flag(R.drawable.flag1);
        }
        });

这是我的功能

public void flag(int resourceID) {
    Bitmap flagBitmap = BitmapFactory.decodeResource(
            getResources(), resourceID);
    Canvas c = new Canvas(flagBitmap);
    c.drawBitmap(flagBitmap, null, null);
}

什么都没有发生 atm ..

标志是圆形的,我将它们作为按钮,我想要的是在单击每个按钮时添加它们,它的标志被插入,我可以把它放在我想要的地方

就像任何照片编辑应用程序上的笑脸

4

1 回答 1

1

我不明白为什么您在问题中提到使用图像视图,而您使用的是画布来绘制位图图像。如果您想以 imageview 方式进行操作,这里有一些代码可以帮助您:

ImageView pic = (ImageView) findViewById(R.id.imageview);
Bitmap img=BitmapFactory.decodeResource(getResources(),R.drawable.flag1);
pic.setImageBitmap(img);

确保在 xml 文件中声明您的 imageview。如果有任何进一步的问题或我的问题有误,请随时发表评论。

编辑:

Matrix matrix = new Matrix();
matrix.reset();
matrix.postTranslate(x, y);

pic.setScaleType(ScaleType.MATRIX);
pic.setImageMatrix(matrix);

在要放置标志的位置插入 x 和 y 坐标,而不是 x 和 y。

于 2012-08-13T01:48:02.530 回答