Android按钮点击添加标志

时间:2012-08-13 01:32:31

标签: android button canvas

我有一个按钮,我想在点击它时创建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);
}

没有任何事情发生..

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

喜欢任何照片编辑应用的笑脸

1 个答案:

答案 0 :(得分:1)

我不明白为什么你提到在你的问题中使用imageview而你正在使用的是画布来绘制位图图像。如果你想以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坐标插入要放置标记的位置。