Отдельные события кликов по элементам в Layer-List Android

Я работаю над приложением для Android для школы.

В этом приложении я хочу нарисовать, скажем, круговую диаграмму. Я не хочу использовать библиотеку для рисования. Приложение должно рисовать круговую диаграмму (предварительно написанный холст или что-то в этом роде).

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

http://i.stack.imgur.com/z5DGi.png

Кто-нибудь сейчас как это сделать?


Найдено решение Как переместить ShapeDrawable в Canvas при событиях касания

Спасибо всем за помощь


person NoodleMage    schedule 02.07.2014    source источник
comment
Отдельные события кликов по элементам в Layer-List Android - это невозможно, поскольку события получают представления, а не чертежи.   -  person CommonsWare    schedule 02.07.2014
comment
Хорошо, спасибо за помощь. Есть ли возможность, что это можно сделать с помощью чего-то еще, кроме Layer-List?   -  person NoodleMage    schedule 02.07.2014
comment
О, я уверен, что это можно сделать, вероятно, используя ответ, который у вас уже есть, плюс вашу собственную логику для интерпретации событий касания на разных сегментах вашей круговой диаграммы. Лично я бы нашел библиотеку и использовал ее.   -  person CommonsWare    schedule 02.07.2014


Ответы (1)


Конечно! Это звучит как отличная практика использования Canvas.

определить новый холст (есть много руководств, вот одно — http://www.compiletimeerror.com/2013/09/introduction-to-2d-drawing-in-android.html#.U7QE6fnYSZM)

и используйте этот трюк (Android рисует круг с двумя цветами (круговая диаграмма)) рисовать пироги..

удачи!

person Wops    schedule 02.07.2014
comment
Спасибо за статьи. Это начало, но не совсем то, что я хочу. Мне все еще нужна возможность изменять цвета каждого объекта по отдельности. Например, пусть пользователь изменит зеленую часть на красную. - person NoodleMage; 02.07.2014