Я хочу, чтобы поместить красные круги, где я потрогать изображение и есть класс, который прослушивает на ощупь и отправляет координаты к другому классу:рисовать круг на контакт с собственным классом
public class Report extends Fragment {
private Context activity;
private Point point = new Point();
private DrawingCrl imgCircle = new DrawingCrl();
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.report, container,
false);
activity = this.getActivity();
//Where I'm doing the touching and respond to that:
final View touchView = rootView.findViewById(R.id.ImageC);
touchView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
point.x = Float.valueOf(event.getX());
point.y = Float.valueOf(event.getY());
touchView = imgCircle.DrawCircle(Point point);
return true;
}
});
return rootView;
public class Point {
float x;
float y;
}
}
Когда я называю DrawCircle Я хочу, чтобы класс DrawingCrl сделать это, нарисуйте круг для меня на точке я посылаю к методу:
public class DrawingCrl {
private Bitmap mBitmap;
private Paint paint;
private Canvas canvas = new Canvas();
public void DrawCircle(Point point) {
mBitmap = Bitmap.createBitmap(400, 800, Bitmap.Config.ARGB_8888);
paint = new Paint();
paint.setColor(Color.RED);
paint.setStyle(Style.FILL);
canvas.drawCircle(point.x, point.y, 50, paint);
}
}
Я прочитал как getting X and Y coordinates and drawing circle и Draw Circle on touch, но не получите, как сделать рисунок круга.
Я довольно новичок в android, так жаль, что у меня много неудач noob. Надеюсь, вы поможете мне справиться с этим! Благодаря! :)
Как это: «@Override защищен недействительным OnDraw() { DrawCircle(); } ' Но как заставить метод onDraw запускать? И это все? У вас есть небольшой пример? – user2373869
См. Отредактированный ответ – spartygw
OnDraw будет вызываться View, когда ему нужно нарисовать себя. Вы не называете это напрямую. Кстати, этот код был просто введен в редакторе stackoverflow. Там может быть опечатка, но она должна обеспечить вам реальную близость к тому, что вы хотите. – spartygw