Не получается сделать так, чтобы при касании на экран появляется объект canvas цифра 8 в точке нажатия. Помогите исправить ошибку.
public class MainActivity extends AppCompatActivity implements View.OnTouchListener {
float x;
float y;
float x1;
float y1;
DrawView p1 = new DrawView();
Canvas canvas;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new DrawView(this));
}
class DrawView extends View {
Paint paint;
public DrawView(Context context) {
super(context);
paint = new Paint();
}
@Override
public void onDraw(Canvas canvas) {
canvas.drawColor(Color.GRAY);
paint.setTextSize(50.0f);
paint.setColor(Color.RED);
paint.setStrokeWidth(10);
canvas.drawText("8",x, y, paint);
}
}
@Override
public boolean onTouch(View v, MotionEvent event) {
x = event.getX();
y = event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN: // нажатие
x1=x;
y1=y;
canvas.drawText("8",x1, y1, p1);
break;
}
return true;
}
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости