Intereting Posts
Проблема с отправкой электронной почты с приложением JSR82 connect: подключение к сокету Bluetooth не создано (не выполнено или прервано) Центрировать объекты по горизонтали в RecyclerView (используя GridLayoutManager) Устанавливать rowSpan или colSpan дочернего элемента GridLayout программно? Аутентификация приложения Android или iPhone в бэкэнде Django Подход к сериализации класса модели конечных точек облака для файловой системы Android Переместите стрелку прядильника влево рядом с текстом Пример кода кодирования и декодирования Base 64 Вызовите переменную ссылочного типа WCF Android – Как программно читать манифестные намерения? Отключить редактирование и фокус EditText (например, TextView) Android выполняет запрос аналитики на сервер Android Bluetooth Serial RFCOMM с низкой скоростью передачи / медленной передачей Событие keypress в JavaScript не отображается в браузере Android Размер спрайтов на разных размерах экрана Andengine Android

Android Canvas не рисовал Path, когда точка пути не видна

Я столкнулся с некоторыми проблемами с Android Canvas при рисовании пути. Мое дело в том, что у меня есть относительная работа с макетом, например, с видом карты (не используя google api или что-то в этом роде). Мне нужно нарисовать путь на эту точку зрения.

canvas.drawPath(polyPath, borderPaint); 

Я также должен нарисовать другой тип, подобный кругу, и многоугольник, использующий холст. Каждый раз, когда мы увеличиваем или уменьшаем масштаб изображения, мы повторно вычисляем точку пути в соответствии с уровнем масштабирования. При использовании старого api, такого как android 2.3.3, проблем нет. Но для более новых api, таких как android 4.x, когда мы увеличиваем масштаб, есть точка, у которой есть позиция из видимого вида (например, -300, -300). Через некоторое время увеличьте видимую область только на небольшой части моего пути. И вдруг весь путь исчезнет. Если мы уменьшим масштаб, он появится снова. Это похоже на сохранение холста, которое они оказывают (другой объект по-прежнему отображается как значок). То же самое касается круга, овала или многоугольника.

Так что я не уверен, есть ли какие-либо изменения в том, как рисовать холст? Есть ли что-то, что мне не хватает в рисовании с использованием холста?

Добавьте эту строку в инициализацию вида

 setLayerType(View.LAYER_TYPE_SOFTWARE, null); 

Также см. Это руководство по API, поддерживающему аппаратный уровень.

API google

Img A

Img B