Собственно говоря, делаю маленькое приложение под iOS для тренировки. Идея — у меня есть карта мира, когда юзер нажимает на ту или иную страну, она, допустим, перекрашивается в другой цвет.
Плохая реализация, придуманная мной:
Взять карту, а сверху замостить ее кнопочками (не UIButton, т.к. все-таки хочется, чтобы кнопочка имела контур страны, а не прямоугольник, для этого, погуглив были найдены OBShapedButton). Как только юзер нажимает на кнопку, делать alpha = 0. В это время, под кнопками лежала сама карта, уже разноцветная. Вуаля — мы сменили цвет.
Но в реальности, реализация очень… как сказать, неповоротливая. Если я захочу чтобы страна могла сменить цвет дважды, а может 20 раз, нужно наложить 20 кнопочек.
Вопрос в том, как это сделать нормально? Вообще, хочется при этом работать с svg картами, но это уже мелочи. В принципе, вторая идея — обрисовка карты. Когда юзер дотрагивается до той или иной страны, мы перекрашиваем этот кусочек карты. Проблема заключается в том, как распознать, на какую страну кликнул юзер?
Или может вы предложите какие-нибудь более интересные решения. Большое спасибо.