2015-03-24 6 views
0

Я хотел бы, чтобы UIButtons дуги вокруг центральной точки.Как я могу использовать элементы iOS?

Изображение ниже показывает конечный результат, который я хотел бы, где все серые элементы являются кнопками. Оптимально, я бы хотел, чтобы математика поддерживала произвольное количество кнопок, расположенных вокруг одного и того же центра, и распределяла пространство равномерно.

Можно ли это сделать со стандартными элементами? Нужно ли создавать единую пользовательскую форму и использовать ее в качестве кнопки? Или мне нужна пользовательская форма для каждой из кнопок ниже?

End result

ответ

0

Вы можете использовать CAShapeLayer с, каждый из которых имеет путь, который построен из концентрических дуг, с fillColor. Вы можете достичь разрыва, увеличивая угол на величину дельта для каждого сектора.

Редактировать: В качестве альтернативы вы можете создать только один путь и применить преобразование вращения на копии его вокруг центра.

+0

Не могли бы вы показать пример кода того, как дуть элемент? – Anfaje

+0

Вы можете использовать этот метод для построения дуг: '[UIBezierPath bezierPathWithArcCenter: радиус центра: радиус startAngle: startAngle endAngle: endAngle по часовой стрелке: по часовой стрелке]' и добавить к нему дополнительные дуги – rounak

0

Оформить заказ на этот Github - https://github.com/Planet1107/CustomShapedButtons/. Я думаю, что он демонстрирует именно то, что вам нужно.

+1

Да, похоже, что этот пример аналогичен. Но для этого требуется, чтобы я знал координаты точек каждого угла в каждой моей дуге? – Anfaje

+0

Вы всегда можете вычислить его. Если вы хотите, просьба предоставить более подробную информацию о желаемой должности, и я постараюсь помочь. – Asaf

+0

Ну, это должно выглядеть точно так же, как мой макет, и быть ... скажем 250px в ширину. Спасибо за помощь, приятель! :) – Anfaje

Смежные вопросы