Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
#1

Кешировать отрисовку

05.11.2014, 10:07. Просмотров 903. Ответов 3
Метки нет (Все метки)

Гуру, подскажите!
Отрисовываю свой копонент с нуля.
Копонент состоит из двух частей - подложки и "курсора".
Подложка обновляется всего несколько раз, а "курсор" довольно часто.
Подложка довольно "тяжелая" и хотелось бы рисовать ее не каждый раз - экономить процессор.
Как подобное можно сделать???

В делфи для этого был компонент битмап. Отрисовка шла на него, а потом одной командой битмап выводился в XY. Битмап хранился в памяти и при необходимости просто выводился не перерисовываясь. Экономия проца иногда была выше 90%.
Хотелось бы сделать нечто аналогичное...
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2014, 10:07
Ответы с готовыми решениями:

не кешировать
Помогите добрые люди, проблема в том, что на мастер пэйджэ есть контрол,...

Не кешировать одну переменную
Всем привет. Есть переменная, которая хранится в сессиях. Она отвечает за...

Запретить браузеру кешировать страницы
Здравствуйте! Собственно, сабж в заголовке: можно ли запретить браузеру...

Кешировать страницы с использованием XMLHttpRequest
Всё находится и запускается на одном и том же домене в последних версиях...

Передать данные из контроллера на отрисовку
День добрый. <?php namespace Application\Controller; use...

3
name?
198 / 169 / 52
Регистрация: 01.06.2010
Сообщений: 371
Завершенные тесты: 1
05.11.2014, 15:09 #2
есть же invalidate(Rect rect), передаете ему как раз область которую надо перерисовать
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
05.11.2014, 22:32  [ТС] #3
Цитата Сообщение от name? Посмотреть сообщение
есть же invalidate(Rect rect), передаете ему как раз область которую надо перерисовать
Это круто (спасибо не знал про параметр Rect), но мне нужно ДРУГОЕ!
Есть ПОДЛОЖКА! Она рисуется из сотни-тысячи маленьких обьектов (векторных рисунков и PNG). С полупрозрачностями, поворотами, смещениями и картниками из ресурсов.... После отрисовки она становится СТАТИЧНОЙ. Теперь надо рисовать "курсор" - практически полупрозрачную рамку поверх подложки с изменяемыми размерами. Как отрисовать "подложку" предварительно (может даже в отдельном потоке), а потом БЫСТРО выводить из заготовки? Курсор буквально бегает за пальцем, выделяя часть картинки. Подложка меняется лишь раз в несколько минут.

Добавлено через 3 минуты
Уже думал даже о методиках создания своего PNG на флешке, но видится мне это крайне кривым решением.
Хотелось бы отрисовать в ПАМЯТИ и выводить из памяти. Не до конца понимаю назначение переменной Paint во всех канвасных процедурах. Думал может быть это связано, но не знаю куда и как копать...
0
EVP
492 / 260 / 58
Регистрация: 14.12.2010
Сообщений: 523
06.11.2014, 21:39 #4
Лучший ответ Сообщение было отмечено Tester64 как решение

Решение

Цитата Сообщение от Tester64 Посмотреть сообщение
В делфи для этого был компонент битмап.
Чем Андроид хуже?)

Java
1
2
3
        Bitmap.Config config = Bitmap.Config.ARGB_8888;
        Bitmap bitmap = Bitmap.createBitmap(512, 512, config);
        Canvas canvas = new Canvas(bitmap);
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.11.2014, 21:39

Как ускорить отрисовку изображения?
Доброго времени суток. Столкнулся с такой проблемой: Необходимо загрузить ...

Как ускорить отрисовку контролов на форме?
Програмно создаю на форме много контролов - кнопок (>200) и возникают такие...

Прекратить отрисовку объекта по нажатию клавиши
Здравствуйте, ребят. Срочно нужна помощь. Есть бесконечный цикл рисующий...


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

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

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