У меня возникла проблема с Android Canvas при рисовании контура. В моем случае у меня есть относительный макет, работающий как представление карты (без использования API Google или чего-то в этом роде). Я должен нарисовать путь к этому представлению.
canvas.drawPath(polyPath, borderPaint);
Я также должен рисовать другой тип, например круг, многоугольник, используя холст. Каждый раз, когда мы увеличиваем или уменьшаем масштаб, мы пересчитываем точку пути, чтобы она соответствовала уровню масштабирования. При использовании старого API, такого как Android 2.3.3, проблем нет. Но для более новых API, таких как Android 4.x, когда мы увеличиваем масштаб, есть точки, которые имеют положение вне видимого вида (например, -300, -300). Через некоторое время увеличение, видимая область отображает только небольшую часть моего пути. И вдруг весь путь исчезает. Если мы уменьшим масштаб, он появится снова. Это похоже на то, что холст перестает отображать их (другой объект по-прежнему отображается как значок). То же самое касается круга, овала или многоугольника.
Так что я не уверен, есть ли какие-либо изменения в том, как рисовать холст? Есть ли что-то, что мне не хватает в рисовании с использованием холста?