ДрагПолигонВью для Android — это многоугольный элемент управления, который позволяет пользователям перетаскивать и изменять форму произвольного многоугольника.
Также вы можете скачать демонстрационное приложение здесь, чтобы оценить его работу.
Свойство | Тип значения | Значение по умолчанию | Описание |
---|---|---|---|
dpvStrokeWidth | float | 4 | Ширина контура пера. |
dpvPointStrokeWidthMultiplier | float | 1.0 | Коэффициент ширины контура точек многоугольника относительно ширины пера. |
dpvPointNormalColor | color | #FFE5574C | Цвет точек многоугольника. |
dpvPointPressedColor | color | — | Цвет точки многоугольника при нажатии. |
dpvPointSelectedColor | color | — | Цвет выбранной точки многоугольника. |
dpvLineNormalColor | color | #FFE5574C | Цвет линий многоугольника. |
dpvLinePressedColor | color | — | Цвет линии многоугольника при нажатии. |
dpvLineSelectedColor | color | — | Цвет выделенной линии многоугольника. |
dpvFillNormalColor | color | #3FE5574C | Заливка многоугольника цветом. |
dpvFillPressedColor | color | #7FE5574C | Цвет заливки многоугольника при нажатии. |
dpvFillSelectedColor | color | #AFE5574C | Цвет залитого многоугольника после выбора. |
dpvAllowableOffsets | dimension | 16dp | Допустимое смещение точки касания. |
dpvDragEnabled | boolean | true | Включение возможности перетаскивания многоугольника. |
dpvChangeAngleEnabled | boolean | true | Разрешение изменения углов многоугольника. |
dpvMultipleSelection | boolean | false | Выбор между одиночным и множественным выбором многоугольников. |
dpvClickToggleSelected | boolean | false | Переключение состояния выбора многоугольника по клику. |
dpvAllowDragOutView | boolean | false | Разрешение перетаскивания многоугольника за пределы экрана. |
dpvTextSize | dimension | 16sp | Размер текста многоугольника. |
dpvTextNormalColor | color | #FFE5574C | Обычный цвет текста многоугольника. |
dpvTextPressedColor | color | — | Цвет текста многоугольника при нажатии. |
dpvTextSelectedColor | color | — | Цвет выбранного текста многоугольника. |
dpvShowText | boolean | true | Отображение текста многоугольника. |
dpvFakeBoldText | boolean | false | Текст многоугольника отображается жирным шрифтом. |
Пример макета:
<com.king.view.dragpolygonview.DragPolygonView
android:id="@+id/dragPolygonView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
Пример кода:
//Добавление многоугольника
dragPolygonView.addPolygon(Polygon polygon);
//Добавление точек многоугольника
dragPolygonView.addPolygon(PointF... points);
//Установка многоугольника в выбранное состояние по позиции
dragPolygonView.setPolygonSelected(int position);
//Настройка прослушивателя изменений
dragPolygonView.setOnChangeListener(OnChangeListener listener);
//Обработка кликов по многоугольнику
dragPolygonView.setOnPolygonClickListener(OnPolygonClickListener listener);
//Обработка долгих нажатий на многоугольник
dragPolygonView.setOnPolygonLongClickListener(OnPolygonLongClickListener listener)
Для получения дополнительной информации о том, как использовать этот компонент, обратитесь к исходному коду приложения или документации API по этой ссылке.
Вы также можете отсканировать следующий QR-код, чтобы поддержать автора чашкой кофе
Мой блог | GitHub | Gitee | CSDN | Блог в саду |
---|---|---|---|---|
Jenly's Blog | jenly1314 | jenly1314 | jenly121 | jenly |
WeChat публичный аккаунт | Gmail электронная почта | QQ электронная почта | QQ группа | QQ группа |
---|---|---|---|---|
Jenly666 | jenly1314@gmail.com | jenly1314@vip.qq.com | 20867961 | 64020761 |
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )