2013-11-27 1 views
0

Привет, я новичок в Android, и сейчас я экспериментирую с некоторыми функциями Android. Итак, я хотел найти способ добавить гибкие добавления фрагментов в образ диска (может быть круговая диаграмма или колесо рулетки). Я провел некоторое исследование по этой теме, Drawable Resources | Android. Если бы я хотел динамически вставить срез, я думаю, что метод InsetDrawable наилучшим образом соответствует моей ситуации. Так что растровое изображение не будет воссоздаваться каждый раз, когда изображение изменяется. Я также рассмотрел некоторый учебник о том, как изменить декартовы координаты на полярные координаты Android SDK: Creating a Rotating Dialer. Я надеялся объединить метод InsetDrawable с полярными координатами для достижения этой функции. Поэтому мне было интересно, может ли кто-нибудь сказать мне, возможны ли мои мысли?Как динамически добавлять фрагменты в образ диска?

Образец изображения, что я хотел бы получить как показано ниже:

Image

Вместо того, 6 ломтиков, пользователь может добавить больше элементов, чтобы заполнить диск, чтобы сделать его 8 или 10 срезов или удалить фрагменты с диска.

Было бы здорово, если бы кто-нибудь мог поделиться ссылкой на некоторые связанные темы или учебники как таковые.

Заранее спасибо

ответ

0

Что именно вы хотите? Если вы хотите динамически добавлять срез каждый раз, когда вы нажимаете кнопку, все, что вам нужно сделать, - это организовать 6 срезов в виде круга в xml как 6 ImageViews. Вам сначала придется сделать эти ImageViews невидимыми. И внутри функции onClick кнопки вы делаете ImageViews видимыми один за другим.

+0

Я думал, если можно позволить пользователю решить, сколько ломтиков они хотят, и они также могут изменить количество срезов. В результате фиксированное число «ImageView» не было бы в файле XML. Ваше предложение соответствует именно тому, что я имею в виду, если вышеупомянутый подход не сработает. Полюбите услышать, что вы советуете по этому поводу. Cheers :) –

+0

Предполагая, что вы знаете максимальное количество разрезов, которые пользователь мог выбрать, вы могли бы сначала разделить изображение на это количество фрагментов. Затем расположите его так же, как я упоминал выше. В зависимости от пользовательского ввода вам просто нужно сделать соответствующие ImageView/ImageViews видимыми внутри щелчка кнопки. Я знаю, что это сложно и сложно. Но это единственный способ, которым я считаю, что это можно сделать. – mkr231

+0

Нет, на самом деле, это довольно просто, что я и имею прямо сейчас. То, что я преследовал, состояло в том, чтобы позволить пользователю решить, сколько места они хотят. Таким образом, установка фиксированной суммы в xml не очень полезна (некоторым пользователям может понадобиться 6 секций по 60 градусов каждая, для некоторых пользователей может понадобиться 12 ломтиков по 30 градусов каждый). В любом случае, я продолжу поиск ответов. –