Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 3

Как сделать canvas на заднем плане относительно всех других canvas-ов (слой с кругами)

16.09.2016, 16:05. Показов 1452. Ответов 0

Студворк — интернет-сервис помощи студентам
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
package com.ua.drawfigures;
 
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.Toast;
 
public class MainActivity extends AppCompatActivity {
 
    Button rectangle;
    Button triangle;
    Button circle;
    Button curve;
    Button rhombus;
    Button paint1;
    ImageView image;
    RelativeLayout layout;
 
    Bitmap bitmap;
    Canvas canvas;
    Canvas canvascirc;
    Paint paint;
    int counter;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        rectangle = (Button)findViewById(R.id.rectangle);
        triangle = (Button)findViewById(R.id.triangle);
        circle = (Button)findViewById(R.id.circle);
        curve = (Button)findViewById(R.id.curve);
        paint1 = (Button)findViewById(R.id.paint);
        rhombus = (Button)findViewById(R.id.rhombus);
        layout = (RelativeLayout)findViewById(R.id.layout);
        image = (ImageView) findViewById(R.id.imageView);
 
        bitmap = Bitmap.createBitmap(200,200, Bitmap.Config.ARGB_8888);
        canvas = new Canvas(bitmap);
        canvascirc = new Canvas(bitmap);
        paint = new Paint();
 
 
    }
 
 
 
    public void circleOnClick(View v){
 
        counter++;
        paint.setColor(Color.CYAN);
        canvascirc.drawCircle(100,50,14,paint);
        canvascirc.drawCircle(100,84,20,paint);
        canvascirc.drawCircle(100,130,27,paint);
        image.setImageBitmap(bitmap);
        if(counter==3)
            paint1.setVisibility(View.VISIBLE);
        v.setEnabled(false);
    }
    public void rectOnClick(View v){
 
        counter++;
        paint.setColor(Color.RED);
        canvas.drawRect(100,50,111,120,paint);
        image.setImageBitmap(bitmap);
        if(counter==3)
            paint1.setVisibility(View.VISIBLE);
        v.setEnabled(false);
        Toast.makeText(this,"Выведены все прямоугольники",Toast.LENGTH_SHORT).show();
 
 
    }
    public void triangleOnClick(View v){
 
        counter++;
        paint.setColor(Color.GREEN);
        canvas.drawLine(80,80,90,90,paint);
        image.setImageBitmap(bitmap);
 
        if(counter==3)
        paint1.setVisibility(View.VISIBLE);
        v.setEnabled(false);
    }
    public void curveOnClick(View v){
        counter++;
        paint.setColor(Color.GREEN);
        canvas.drawLine(60,60,80,80,paint);
        canvas.drawLine(120,80,140,60,paint);
 
        image.setImageBitmap(bitmap);
        if(counter==3)
            paint1.setVisibility(View.VISIBLE);
        v.setEnabled(false);
    }
    public void clearOnClick(View v){
        canvas.drawColor(Color.WHITE);
        image.setImageBitmap(bitmap);
        counter=0;
        paint1.setVisibility(View.INVISIBLE);
        rectangle.setEnabled(true);
        triangle.setEnabled(true);
        circle.setEnabled(true);
        curve.setEnabled(true);
    }
 
 
}
 Комментарий модератора 
используйте теги
Миниатюры
Как сделать canvas на заднем плане относительно всех других canvas-ов (слой с кругами)  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.09.2016, 16:05
Ответы с готовыми решениями:

Как сделать чтобы label был на переднем плане а не на заднем?
Создаются label с данными, но на фоне стоит картинка pictureBox, и они появляются под ней, как сделать чтобы они были поверх изображения. ...

как сделать программно чтобы программа была постоянно на заднем плане
Суть вопроса как сделать программно чтобы программа была постоянно на заднем плане? Пишу экранную клавиатуру, как делать имитацию...

Как вывести UI image на самый верхний слой, не пользуясь перетаскиванием элементов в иерархии Canvas
Здравствуйте знатоки. Есть вопрос. Везде написано, чтобы вывести какой то элемент UNITY UI на передний план нужно опустить его ниже по...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.09.2016, 16:05
Помогаю со студенческими работами здесь

Canvas html5, как разместить черный пискель в центре canvas'a?
как разместить черный пискель в центре canvas'a?

Как добиться одинакового размера шрифта при выводе на Image.Canvas и Printer.Canvas
Здравствуйте! Подскажите, пожалуйста, как добиться одинакового размера шрифта при выводе на Image.Canvas и Printer.Canvas

Можно ли одной процедурой рисовать на Image.Canvas и Printer.Canvas
Здравствуйте, пожалуйста, подскажите можно ли одной процедурой рисовать на Image.Canvas и Printer.Canvas?

построить функцию y=kx+b (линейная функция) с помощью Vcart или canvas (form.canvas)
Надо построить функцию y=kx+b (линейная функция) с помощью Vcart или canvas (form.canvas)

Canvas.TextOut отрисовка текста относительно центра
Доброго времени суток. Подскажите какое свойство Font нужно отредактировать, что бы текст отрисовывался относительно цента. По умолчанию...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru