Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
1

Рисовать поверх всего

28.01.2015, 13:35. Просмотров 1320. Ответов 8
Метки нет (Все метки)

Есть ли возможность рисовать поверх всего экрана не вешая канвас на какую либо вьюшку? То есть есть кастомная кнопка, неизвестно где она будет использоваться, и нужно при нажатии на эту кнопку отрисовать под ней, скажем текст, не двигая остальные элементы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2015, 13:35
Ответы с готовыми решениями:

Кнопка поверх всего
Здравствуйте форумчане, у меня есть сервис, который реагирует на входящий...

Как рисовать на кнопках
Есть кнопка на которой картинка и текст. Хочу картинку РИСОВАТЬ самому. Не...

Как рисовать графики на Android?
Как рисовать графики на андроид?То есть,делаю калькулятор на андроид, нужно...

Как рисовать на готовом canvas?
Друзья всем привет!! :) Недавно начал изучать canvas и всю эту тему и не могу...

Одновременно и рисовать и отслеживать координаты нажатия
Доброго времени суток. Реализую игру на андроиде. Все рисование делаю через...

8
Gabberr
103 / 103 / 19
Регистрация: 13.10.2009
Сообщений: 404
28.01.2015, 14:23 2
Думаю единственный вариант создать кастомную кнопку, которая сама будет рисовать что-то внизу себя
0
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
28.01.2015, 14:25  [ТС] 3
Это понятно. Подумал - сделал при нажатии добавление кастомной вьюшки на всю активити, переодпределил onDraw - теперь нужно как-то найти координаты кнопки относительно всей активити.
0
Gabberr
103 / 103 / 19
Регистрация: 13.10.2009
Сообщений: 404
28.01.2015, 14:51 4
Зачем так сложно, легче в самой кнопке в методе onDraw, в зависимости от состояния рисовать что-то снизу, тогда координаты даже не надо знать.
0
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
28.01.2015, 15:34  [ТС] 5
Цитата Сообщение от Gabberr Посмотреть сообщение
Зачем так сложно
А иначе никак поверх других элементов не нарисуешь.
0
Gabberr
103 / 103 / 19
Регистрация: 13.10.2009
Сообщений: 404
28.01.2015, 15:37 6
То-есть поверх этой кнопки ещё что-то лежит?
0
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
28.01.2015, 15:40  [ТС] 7
Не поверх ее. Просто на экране может быть куча элементов, и под этой кнопкой(в 2х мерном смысле) лежат еще элементы, если рисовать что-то в onDraw кнопки под этой кнопкой - это либо вообще не будет отрисовано, либо кнопка увеличит свою высоту на высоту дополнительного элемента, что в свою очередь сдвинет вниз элементы которые лежат ниже кнопки.
0
Gabberr
103 / 103 / 19
Регистрация: 13.10.2009
Сообщений: 404
28.01.2015, 15:45 8
Ну это понятно, я имел ввиду определить нужную высоту кнопки, и если рисовать не надо, то там будет пустое место, если надо, то рисовать на пустом месте. А если высота wrap_content, то сдвиг конечно произойдет)
0
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
29.01.2015, 13:46  [ТС] 9
Цитата Сообщение от Gabberr Посмотреть сообщение
Ну это понятно, я имел ввиду определить нужную высоту кнопки
В том и дело, что так не пойдет.

Добавлено через 21 час 59 минут
В общем сделал, может кому пригодится. Для начала написал кастомную View (наследовал напрямую от View). Далее т.к. посылать сервис как контекст для View бессмысленно предположил, что контекст всегда Activity. А дальше уже просто - при нажатии на кнопку рисую поверх всей активити свою кастомную View, переопределяю у нее onDraw - при создании эта View получает кнопку которая ее вызывает, у кнопки получаем координаты и рисуем прямоугольник ровно под кнопкой. Вот и все, работает шустро, вместо прямоугольника можно нарисовать все что угодно.
0
29.01.2015, 13:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2015, 13:46

Как рисовать текст на Canvas во View?
Есть ImageView. Я делаю так: Canvas canvas; canvas = new Canvas();...

Можно ли рисовать лупу не во всех фрагментах?
Недавно подключил ActionBar с поиском, использовал такой тьюториал:...

Сложно ли рисовать графику на Джава для Андроида?
Сложно ли рисовать графику на Джава для Андроида?


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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