Я создаю пользовательский интерфейс в Android, где пользователю нужно выбрать среди ar c «сегментов», размещенных друг над другом, чтобы определить, «включены» они или «выключены», как показано ниже. Я новичок ie в Android и не знаю, какие элементы использовать для этого. Я пробовал «ArcShape» до сих пор, но он создает «заполненную» форму, фактически сектор круга, а не ar c. Мне также нужно, чтобы элементы можно было щелкать только по периметру.
Вот скриншот из моей реализации JavaFX:
введите описание изображения здесь
Мне пришлось использовать вычитание формы, чтобы получить желаемую функциональность, но я не понимаю, как это сделать на Android.
public class ArcContourFactory {
public static Shape newArcContour(double centerX, double centerY,
double radiusX, double radiusY, double startAngle,
double length, double strokeWidth) {
Arc contour = new Arc(centerX, centerY,
radiusX + strokeWidth / 2, radiusY + strokeWidth / 2,
startAngle, length);
Arc inside = new Arc(centerX, centerY,
radiusX - strokeWidth / 2, radiusY - strokeWidth / 2,
startAngle, length);
contour.setStrokeWidth(0);
contour.setType(ArcType.ROUND);
inside.setType(ArcType.ROUND);
Shape returnShape = Shape.subtract(contour, inside);
returnShape.setStrokeType(StrokeType.INSIDE);
returnShape.setFill(Color.TRANSPARENT);
return returnShape;
}
}