Сергей
Нет(
У imageView есть матрица масштабирования, доступная соотв методами. Через нее координаты пикселя картинки внутри переводятся в координаты от верхнего угла
Leonid
Мол чтобы у кнопки закругленной во вне не регистрировало
Ну у меня в проекте полно таких кнопо. мне кажется, усложняете сильно. В onTouch чекнуть, что координаты ивента входят в гранцы кнопки. Но я без битмапов - сам на канвасе рисую.
Сергей
Тогда полезно начать с учебника по реляционкам
Ivansuper
Напугаешь матрицами
Сергей
Угу. А потом он поставит fitStart или приделает pane/zoom
Ivansuper
Мне даже кажется что он в imageview полез зазря потому что в нее картинку просто можно задать
Сергей
Лучше сразу освоить. А границы у кнопок - писал же. Класс джавы polygon и у него метод contains
Ivansuper
Если форма кнопки долбанутая, то ты употеешь описывать полигонами
Ivansuper
Но про матрицы трансформации пусть почитает да
Сергей
Круг аппроксимируется многогранником неплохо
Сергей
С n=20 и более. Массив координат даже для сложной формы просьо в пэйнте снимается
Leonid
Ivansuper
Вот и сиди тогда в пеинте снимай, когда масками просто переводом в чб и загибанием контраста можно сделать
Ivansuper
Тут кстати outline удобно юзать
Ivansuper
Он уже под тень идет
Leonid
Вот к примеру простая овальная кнопка. drawRoundRect() и в onTouch чекаю, что в пределах овала ивент пришел Все
Сергей
Это да.
Leonid
Тени, риппл - это в коде всё
Ivansuper
Ребят. Чет мы тут орем, а чувак слинял
leksss
Есть где нибудь видео как сделать раскраску по номерам?
Sergey
Ребят. Чет мы тут орем, а чувак слинял
Да он, возможно, сидит и код пилит.
Debauchee
Добрый день. Отправляю data сообщения Firebase Cloud Messaging. Когда приложение не запущено, при получении data сообщений в сервисе FCM необходимо получить доступ к SharedPreferences приложения. getAplicationContext, getBaseContext, this - не работают, всегда возращается значение по умолчанию. Если приложение запущено или свёрнуто, доступ имеется. Как правильно получить значения SharedPreferences приложения в методе onMessageReceived() сервиса FCM?
lbai
Другис, подскажите какойнибуди жирный бложик по деву или курс, который первый пришел в голову, может чтоб room+javarx или какая галерея picasso с кешированием?
Who
иметь код под рукой - полезная вещь
lbai
я лично читал любой источник из инета и при этом имел под рукой google sample
ну это да, просто я чет кроме androidhive так даже незнаю где подглядеть гуд практик, ну гитхаб и еще пара сайтов, но чет все я уже видел))
Сергей
Есть где нибудь видео как сделать раскраску по номерам?
ну какое видео? (1) для нее не так просто достать контент с правами - а без покупки прав раскраску выпилят моментом. (2) там достаточно много нетривиальных моментов, нужно хранить картинки промежуточно, нужно хранить и показывать их эскизы, нужен быстрый алгоритм покраски, нужно реализовать зумм картинки, ее посылку по сети и возможно скачку
Сергей
там на пару недель работы оаытному человеку-то
leksss
Ну понятно, просто интересно стало
leksss
Что за права? Полно этих раскрасок в гп
Who
А ты не видел этот сайт?
да я только из репозитория googlesamples брал примеры и на чем-то вроде startandroid и habr сидел, не помню)
Albert
Добрый день. От чего должен наследоваться класс, чтобы у него был доступ к SharedPreferences, если это не активность? Или доступ туда — это прерогатива только активностей?
Taras Kushniruk
SharedPreferences можно инжектить с активити через Dagger DI
Albert
Как это сделать правильно?*
Who
А как передать этот контекст?
через конструктор можно
Who
ща
Сергей
Что за права? Полно этих раскрасок в гп
коммерческие раскраски скорее всего честно купили картинки на депозитфото или у художника
Taras Kushniruk
зачем контекст передавать?
Taras Kushniruk
передай сразу объект преференсов
Taras Kushniruk
при создании
Anton
А как передать этот контекст?
заведи класс Preferences создай в нем поле sharedPreferences и инициализируй его в конструкторе куда тебе дагер передает контекст
Who
А как передать этот контекст?
https://pastebin.com/gBarmr8U я лично так делал
Leonid
А как передать этот контекст?
как пример https://gist.github.com/ratanoff/b3aa5400dc71a6e1bc6537f259569d1c
Albert
Спасибо, очень помогли)
Albert
Ля, теперь передача чего-либо в конструктор не вяжется с синглтонностью класса xD
Сергей
Добрый день. От чего должен наследоваться класс, чтобы у него был доступ к SharedPreferences, если это не активность? Или доступ туда — это прерогатива только активностей?
если требуется в вызове не активности - контекст можно передать из активности по цепочке вызовов. В других модулях его лучше не хранить в локальной переменной - возможны утечки памяти. Да, есть "контекст приложения", доступный по getApplicationContext()
Who
Ну, если у тебя класс синглтон, то так же тоже вроде норм) внутри: private static YourSharedPreferenceClass instance; private Context context; // или сразу объект преференса? private YourSharedPreferenceClass(Context context){ this.context = context; } public static synchronized YourSharedPreferenceClass getInstance(Context c){ if (instance == null) instance = new YourSharedPreferenceClass(c); return instance; }
Who
кстати как тут форматировать код через десктоп версию как код?
Albert
Точно, спасибо, так даже проще, чем я нагромоздил
Who
и если в моём коде есть проблемы, скажите плиз
Who
Точно, спасибо, так даже проще, чем я нагромоздил
не за что) с википедии можно копипастить инициализацию синглтона если есть проблемы с этим или использовать что-то вроде lombok)
Albert
и если в моём коде есть проблемы, скажите плиз
Выше посоветовали не хранить контекст локально во избежание утечек памяти, потому проще сразу в конструкторе вытаскивать требуемые параметры и избавляться от контекста. Трабл будет только если они ещё откуда-то редактируются
Albert
Впервые вижу настолько отзывчивый чат. Спасибо от души)
Who
Народ, кто работал с Firebase / Firestore, надо ли как-то отписываться от прихода новых снапшотов и если да, то как? FirestoreListAdapter имеет на борту startListening и stopListening как это реализовать у меня и стоит ли? я думаю что стоит (на скрине метод репозитория на основе Firebase)
Anton
тут нет remove-методов или не сюда нужно?
Я не помню как оно называется. В документации к firebase android sdk это описано
Albert
Подскажите, каким образом можно логгировать Throwable от Retrofit? Прямо выводить трейс в лог, или есть более элегантный метод? UPD: Вопрос снят, достаточно передать этот Throwable третим аргументом лога
Taras Kushniruk
Log.d(String tag, String message, Throwable exception) - сигнатура метода UPD: не дочитал
Ravshan
Ребят такая вот проблемота, есть layout файл который содержит layout1 и layout2. нажимаю на кнопку layout1 становится gone c анимацией и layout2 становится видимым с анимацией, нажимаю на кнопку layout2 становится gone. Но во второй нажатий кнопки анимация не работает!
Leonid
код показывай
Taras Kushniruk
у тебя переменная которая отвечает за gone статическая?
Taras Kushniruk
со static модификатором или без?