Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Taxip
13 / 13 / 7
Регистрация: 28.09.2013
Сообщений: 364
#1

Нарисовать круг используя Canvas - Программирование Android

20.06.2015, 02:15. Просмотров 598. Ответов 4
Метки нет (Все метки)

Здравствуйте. Совсем недавно начал изучать Java ME, такой вопрос, неужели все так сложно с Canvas? Разве обязательно, чтобы нарисовать простейший круг, мне необходимо вместо моего активити, создавать класс, где будет переопределен onDraw. До этого юзал делфи, там это делалось намного проще, на форму кидался компонент, далее уже в этом компоненте рисовались фигуры. А тут получается, чтобы нарисовать круг на моем активити, мне надо вместо активити создавать класс, который будет рисовать круг. Что-то у меня совсем каша в голове. Может все таки можно каким-нибудь образом рисовать круг на моем активити, без переопределения метода onDraw, нарисовать круг просто поверх моего активити. Гуглил этот вопрос, но в выдаче на первых ~20 сайтах написан один и тот же код с практически одинавым описанием.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2015, 02:15     Нарисовать круг используя Canvas
Посмотрите здесь:

"Нарисовать" массив, используя Canvas и графические примитивы - Программирование Android
Имеется двумерный массив состоящий из нулей и единиц, где нуль должен отображаться как квадрат. Вопрос в том, как все-таки "нарисовать"...

Как нарисовать Bitmap на Canvas'е - Программирование Android
Здравствуйте, возникла проблема не могу поменять обычный фон WHITE на этот...

Canvas - Программирование Android
Хочу разобраться в канвасе. Полазил по интернету, не нашел никакого простейшего материала про движение обьектов созданных в канвасе по...

Круг для завершения активности - Программирование Android
Здравствуйте! Хочу спросить как можно добиться вот такого результата: Имеется Окружность, а внутри окружности имеется маленькая...

Потоки. Canvas - Программирование Android
Добрый день. Подскажите, как реализовать обработку изменения цвета с помощью потоков? Не могу разобраться как обратиться package...

Использование canvas - Программирование Android
Интересует насколько глупо использовать слудующий метод рисование и как тогда быть. Есть игра где все происходит в координатной системе....

Canvas в JPEG - Программирование Android
Всем Привет! пытаюсь сохранить все что нарисовано на канве в джпег-файл. Глубоко не загугливаясь обнаружил следующий материал:...

canvas.rotate - Программирование Android
Данный код работает не стабильно на разных устройствах. Под разные плотности экрана (ldpi, mdpi, hdpi, xhdpi) в каждую папку был...

Растянуть Canvas - Программирование Android
Господа, вопрос, у меня 2 телефона, первый 1280x720, второй 800x600, мое App было сделано для 800x600, в частности речь о Canvas,...

Карта на Canvas - Программирование Android
Здравствуйте! Решил попробовать написать игру под андроид, до этого писал пару приложений несложных. Суть игры рассказывать не буду,...

Android canvas - Программирование Android
Как передать параметры в класс с методом onDraw? Этот самый класс мне нужно вызвать в xml! я так то сделал вложеный класс, и...

вылетает canvas - Программирование Android
Здравствуйте, такой вопрос. сделал приложение потестил много раз выложил в маркет прошла неделя в консоли разработчика появилась ошибка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 651
20.06.2015, 03:56     Нарисовать круг используя Canvas #2
Вот самый простой способ. Проще нет.
Taxip
13 / 13 / 7
Регистрация: 28.09.2013
Сообщений: 364
20.06.2015, 03:59  [ТС]     Нарисовать круг используя Canvas #3
Mikalai, Я видел эту статью Повторюсь еще раз, тут перерисовывается весь экран, то есть все кнопки, текст и т.п. пропадут. Мне необходимо, чтобы круги рисовались только на определенной части экрана.
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 651
20.06.2015, 04:29     Нарисовать круг используя Canvas #4
Размести SurfaceView там где тебе нужно и рисуй что хочешь
akyma40
16 / 15 / 3
Регистрация: 20.05.2015
Сообщений: 103
20.06.2015, 09:13     Нарисовать круг используя Canvas #5
не надо вместо активити создавать класс, просто делаешь в своем xml файле вот такую запись:
XML
1
2
3
4
5
<com.example.имя_проэкта.имя_класса
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:id="@+id/свой_id"
/>
при этом твоя активити остается такой же как и была
и потом твой класс наследуешь от View
и получается вот что:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class SomeView extends View {
 
Paint paint;
int X;
int Y;
final static int Radius = 20;
 
public SomeView(Context context, AttributeSet attrs) {
    super(context, attrs);
    paint = new Paint();
    paint.setColor(Color.YELLOW);
    paint.setStyle(Style.FILL);
    X = 30;
    Y = 30;
}
 
@Override
protected void onDraw(Canvas canvas)// метод OnDraw вызвается Андроидом
                                    // тогда, когда нужно отрисовать данный
                                    // View
{
    canvas.drawCircle(X, Y, Radius, paint);
    invalidate();// invalidate() нужен для того, чтобы оповестить Android,
                    // что нужно выполнить метод OnDraw снова, без него View
                    // не будет перериcовываться.
}
}
Yandex
Объявления
20.06.2015, 09:13     Нарисовать круг используя Canvas
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru