С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
SerVB
4 / 4 / 2
Регистрация: 16.05.2015
Сообщений: 106
#1

Узнать фон SurfaceView - Программирование Android

24.11.2015, 22:17. Просмотров 334. Ответов 4
Метки нет (Все метки)

Как узнать фон SurfaceView?

Java
1
2
3
4
mSurfaceViewLeft = (SurfaceView)findViewById(R.id.surfaceViewLeft);
mSurfaceViewRight = (SurfaceView)findViewById(R.id.surfaceViewRight);
 
mSurfaceViewLeft.setBackgroundColor(mSurfaceViewRight. /* какой-то метод для возвращения фонового цвета */);
Если использовать .getDrawingCacheBackgroundColor(), то возвращает черный цвет

Спасибо

Добавлено через 44 секунды
Т.е. задача - скопировать фон из одного SurfaceView в другой
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2015, 22:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Узнать фон SurfaceView (Программирование Android):

Восстановление SurfaceView - Программирование Android
Кто работал с SurfaceView, помогите! Рисую на SurfaceView с помощью onTouchEvent(), без потока, все замечательно рисует, сворачиваю...

Мерцание в SurfaceView - Программирование Android
Всем привет! Рисую на SurfaceView фон и на нем анимированные объекты. Кадры беру из атласа. Появилось мерцание, причем фон не мерцает а...

SurfaceView не отображается - Программирование Android
Учусь программировать по книге П. Дейтел, Х. Дейтел "Android для программистов. Создаём приложения". Делаю уже 5 приложение, но это не...

Работа с SurfaceView - Программирование Android
Отрисовка в SurfaceView никогда не вызывала трудностей, до тех пор, пока не запустил приложение на телефоне с экраном 1920х1080px. Фпс упал...

SurfaceView + onKeyDown - Программирование Android
Проблемка очень простая - не реагирует на onKeyDown в классе, наследующем SurfaceView. Исправьте мою криворукость, пожалуйста, подскажите,...

Ошибка в SurfaceView - Программирование Android
есть игра. отрисовка идет через SurfaceView и поток привязанный к нему. ошибка возникает в следующем моменте - я открываю сам игровой...

4
SerVB
4 / 4 / 2
Регистрация: 16.05.2015
Сообщений: 106
04.07.2016, 10:47  [ТС] #2
Обновлю тему, т.к. вопрос актуален Как обратиться к свойству SurfaceView?
0
Pablito
2534 / 2013 / 627
Регистрация: 12.05.2014
Сообщений: 7,072
Завершенные тесты: 1
04.07.2016, 12:14 #3
ну не знаю...
- создал 2 surfaceview
- одному поставил зеленый фон
- взял Drawable из кеша первого surfaceview и поставил его на фон второго
все работает

Java
1
2
3
                sv1.setDrawingCacheEnabled(true);
                final Drawable background = sv1.getBackground();
                sv2.setBackground(background);
0
SerVB
4 / 4 / 2
Регистрация: 16.05.2015
Сообщений: 106
05.07.2016, 20:00  [ТС] #4
Паблито, setBackgaround не работает на API ниже 16. Попробовал использовать устаревший setBackgroundDrawable, но это, наверное, что-то не то. У левого sv закрепляется текущий цвет, а новый цвет, который я хочу установить левому, передается правому...
Java
1
2
3
mSurfaceViewLeft.setDrawingCacheEnabled(true);
final Drawable background = mSurfaceViewLeft.getBackground();
mSurfaceViewRight.setBackgroundDrawable(background);
Как считаете, нужно переходить на новое API? Мое временное решение - храню цвета обоих sv в публичных переменных
0
petruchodd
109 / 106 / 11
Регистрация: 23.06.2009
Сообщений: 585
06.07.2016, 01:45 #5
там же можна указать через деприкейт и через новое апи , что использовать в такой ситуации.

как пример на webview
Java
1
2
3
4
5
6
7
8
9
10
11
@SuppressWarnings("deprecation")
            @Override
            public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
               ErrorScreen();
            }
 
            @TargetApi(android.os.Build.VERSION_CODES.M)
            @Override
            public void onReceivedError(WebView view, WebResourceRequest req, WebResourceError rerr) {
                ErrorScreen();
            }
0
06.07.2016, 01:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.07.2016, 01:45
Привет! Вот еще темы с ответами:

Обработка касаний в SurfaceView - Программирование Android
Всем привет! Для обработки касаний в surfaceview определяю OnTouchEvent () но касания не обрабатываются. Контролирую через Log.d(). В чем...

SurfaceView сворачивание программы - Программирование Android
@Override protected void onDraw(Canvas canvas){ //рисует игровое поле super.onDraw(canvas); Paint paint = new Paint();...

SurfaceView&Canvas - Программирование Android
Подскажите, как реализовать отображение, например, карандашика, когда рисуешь на Canvas в SurfaceView. В какую сторону копать, чтобы такое...

SurfaceView поверх ImageView - Программирование Android
До этого вместо Surface использовался обычный View и Canvas в нём, но потребовалась анимация. Просто в background картинку засунуть не...


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

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

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