Нарисуйте несколько точек над изображением в Android - PullRequest
0 голосов
/ 08 мая 2018

Как добавить несколько точек над изображением. это то, что я пытаюсь

    myView = (ImageView) findViewById(R.id.my_view);
        View view = LayoutInflater.from(ZoomTouchActivity.this).inflate(R.layout.layout_custom_view, null);
        CircularImageView imgView = view.findViewById(R.id.site_image);
        TextView siteName = view.findViewById(R.id.site_text);
        imgView.setImageResource(R.drawable.ic_launcher_background);
        siteName.setText("est");
        Bitmap bitmap = getBitmapFromView(view);
        Canvas canvas = new Canvas(bitmap);
        Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
        paint.setColor(Color.BLACK);
//        canvas.drawCircle(50, 50, 10, paint);
        canvas.drawBitmap(bitmap, 50, 50, paint);
        myView.setImageBitmap(bitmap);

Ответы [ 2 ]

0 голосов
/ 09 августа 2019

Попробуйте это:

BitmapFactory.Options myOptions;
Canvas canvas;
Bitmap mutableBitmap;
Bitmap workingBitmap;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    btn_open= findViewById(R.id.btn_open);
    image2= findViewById(R.id.imageView);
    myOptions = new BitmapFactory.Options();
    bitmap = BitmapFactory.decodeResource(getResources(), 
    R.drawable.image000880,myOptions);
    paint= new Paint();
    paint.setAntiAlias(true);
    paint.setColor(Color.WHITE);

    workingBitmap = Bitmap.createBitmap(bitmap);
    mutableBitmap = workingBitmap.copy(Bitmap.Config.ARGB_8888, true);
    canvas = new Canvas(mutableBitmap);

   private void drawpoint(ImageView imageView,float x,float y, int raduis){
    myOptions.inDither = true;
    myOptions.inScaled = false;
    myOptions.inPreferredConfig = Bitmap.Config.ARGB_8888;// important
    myOptions.inPurgeable = true;
//  ArrayList<Point> list= new ArrayList<>();
    canvas.drawCircle(x,y, raduis, paint);
    imageView = (ImageView)findViewById(R.id.imageView);
    imageView.setAdjustViewBounds(true);
    imageView.setImageBitmap(mutableBitmap);
}
0 голосов
/ 08 мая 2018

Вы можете рисовать в ImageView, просто поместив растровое изображение изображения на холст, нарисуйте холст и установите нарисованный холст на изображение. Вы можете проверить этот ответ для более подробной информации. Для более подробной информации о том, как рисовать, вы можете проверить документацию для Android здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...