Android 在现有位图图像上绘制正方形

Android 在现有位图图像上绘制正方形,android,Android,我有一个位图图像,我想在这个图像上画一个正方形,用于特殊位置,我进行了研究,但没有找到任何解决方案,所有解决方案都是用于在空视图上创建正方形,请建议我是初学者 public class DrawView extends View { Paint paint = new Paint(); public DrawView(Context context) { super(context); } @Override public v

我有一个位图图像,我想在这个图像上画一个正方形,用于特殊位置,我进行了研究,但没有找到任何解决方案,所有解决方案都是用于在空视图上创建正方形,请建议我是初学者

public class DrawView extends View
{
    Paint paint = new Paint();

    public DrawView(Context context)
    {
        super(context);
    }


    @Override
    public void onDraw(Canvas canvas)
    {


        Paint myPaint = new Paint();
        myPaint.setColor(Color.WHITE);
        myPaint.setStyle(Paint.Style.STROKE);
        myPaint.setStrokeWidth(2);
        canvas.drawRect(10, 10, 100, 100, myPaint);


    }

}

我应该将位图图像转换为convas吗?如何转换?

试试这个,它可以实现您想要的功能,还有更多功能:

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

public class DrawView extends View {
    Paint paint = new Paint();

    public DrawView(Context context) {
        super(context);            
    } 

    @Override 
    public void onDraw(Canvas canvas) {
        paint.setColor(Color.BLACK);
        paint.setStrokeWidth(3);
        canvas.drawRect(30, 30, 80, 80, paint);
        paint.setStrokeWidth(0);
        paint.setColor(Color.CYAN);
        canvas.drawRect(33, 60, 77, 77, paint );
        paint.setColor(Color.YELLOW);
        canvas.drawRect(33, 33, 77, 60, paint );

    } 

} 
要绘制它: 导入android.app.Activity; 导入android.graphics.Color; 导入android.os.Bundle

public class StartDraw extends Activity {
    DrawView drawView;

    @Override 
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        drawView = new DrawView(this);
        drawView.setBackgroundColor(Color.WHITE);
        setContentView(drawView);

    } 
} 
来源:

这可能有帮助