Я создаю приложение для рисования и использовал класс Drawingcanvas
.Наряду с этим классом я также использовал классы Shape (circle, oval, rectangle and input text etc)
.Моя проблема заключается в том, что когда я использовал оператор if в своем классе DrawingCanvas
со всеми фигурами, я каждый раз получал одну ошибку (необратимый тип, невозможно преобразовать "com.example.apex.myapplication.shape"
) в circle.oval, InputText и т. Д.
case MotionEvent.ACTION_MOVE:
if (mCurrentOperation == Constants.OPERATION_DRAW_PENCIL || mCurrentOperation == Constants.OPERATION_ERASE) {
mBrushPath.lineTo(xPos, yPos);
} else if (mCurrentOperation == Constants.OPERATION_MOVE_VIEW)
{
if (mCanvasLeftBounds < xPos && xPos < mCanvasRightBounds && mCanvasTopBounds < yPos && yPos < mCanvasBottomBounds)
{
if (mShapeToMove instanceof Circle)
{
((Circle) mShapeToMove)
((Circle) mShapeToMove).setCenterX(xPos);
((Circle) mShapeToMove).setCenterY(yPos);