Ivan
Ребят, есть один главный ImageView и не сколько обычных. Я хотел бы сделать так, чтобы при клике на обычный ImageView, главному задался imageResource обычного. Как это можно сделать с помощью DataBinding и viewModel?
Владимир
"либо в testRuntime добавить org.json", как это сделать ?
Загугли "org.json Gradle". Попробуй подключить как testRuntime
Владимир
Но это скорее предположение
Elron
аа
Elron
вроде помогло)
Elron
Загугли "org.json Gradle". Попробуй подключить как testRuntime
спасибо) добавил строчку testImplementation 'org.json:json:20190722'
Mike
Причём тут вообще датабаиндинг и уж тем более вьюмодель?
«“Надо” — уклончиво ответил главный ёжик.»
Кирилл
«“Надо” — уклончиво ответил главный ёжик.»
😄😄 Мне кажется, это какое-то тестовое задание совсем для новичка
Ivan
Но хранить не принципиально. Без хранения можно сделать с помощью DataBinding? Хочу чтобы по красоте было
Кирилл
Я просто хочу хранить imageResource во вьюмодел
Ну окей По клике на imageview шли ресурс в вьюмодель, вьюмодель положит ресурс в ливдату, а ливдату будет слушать центральная кнопка. И датабаиндинг не нужен.
Elron
Кирилл
Но хранить не принципиально. Без хранения можно сделать с помощью DataBinding? Хочу чтобы по красоте было
Датабаиндинг говно ссаное. На простых кейсах он кажется красивым, но потом тебе отстрелит ноги по самые яйца.
Elron
ресурс можно хранить в теге
karvinok
я использую databinding только в случаях, где он действительно упростит работу. и в большинстве использую только для получения вьюшек планирую отказаться совсем
Кирилл
Но это же типо то на чем строится MVVM
Но имплементация отвратительная. Да, это канон mvvm, я сам долго по этому фанател, но датабаиндинг от Гугла лучше не юзать. Потом начинается большое количество проблем.
karvinok
иногда, если задача стоит заполнить 45 статичных полей обновляемыми данными - супер. но в остальном почти не трогаю
Ivan
ресурс можно хранить в теге
Я то и по айди ImageView могу определить какой там ресурс лежит, но всё же, тогда смысл датабайдинга
Кирилл
например ? почти с самого начала юзаю и не испытываю никаких проблем(ну почти)
Я где-то тут давным-давно писал. Я уже давно избавился от этого в своих проектах и забыл как страшный сон, так что уже и не вспомню.
karvinok
binding.imageView.setOnClickListener{ ... }
Elron
баттернайф ?!
Кирилл
А какая альтернатива?
Не использовать датабаиндинг. Да, не кононичный мввм, но всё же.
Mike
Я где-то тут давным-давно писал. Я уже давно избавился от этого в своих проектах и забыл как страшный сон, так что уже и не вспомню.
а можешь найти? Мне нужны аргументы за мой датабайндинг из кода, а XMLный я вообще не пробовал
Кирилл
а можешь найти? Мне нужны аргументы за мой датабайндинг из кода, а XMLный я вообще не пробовал
Не могу.( Если ты можешь посмотреть мои сообщения в этой беседе, то тогда сможешь найти. Я редко тут пишу.
Denis
ViewBinding от гугла жи
Denis
Для тех кому много обычного датабинда
Кирилл
ViewBinding от гугла жи
Так это альтернатива kotlin android extensions.
Ivan
Да
Ля, только начал думать что начал нормально кодить
Mike
а вот тут @aafromscratch господин использует, вроде не жаловался
Denis
Так это альтернатива kotlin android extensions.
Только без «приправ и котлина»
Кирилл
Только без «приправ и котлина»
А у тебя до сих пор нет котлина в проекте? И да, вьюбайндинги лучше в 1% кейсов, kae всё равно проще и короче.
Ivan
Короче, как я понял, в свитч засунуть айди imageView и брать нужный ресурс
karvinok
Так это альтернатива kotlin android extensions.
в kotlin ext нужно проверять импорты, и убеждаться что ты верный layout ипортнул, в случае с идентичными ID шниками
Denis
А у тебя до сих пор нет котлина в проекте? И да, вьюбайндинги лучше в 1% кейсов, kae всё равно проще и короче.
Чет там было отличие кае и вьюбиндинга, там как раз по layout/nullability, чето со вложенными еще. Не помню точно крч
karvinok
+ мне не особо заходит в котлине писать не в camelCase
karvinok
разве что idшники раздавать в camel)
karvinok
А этот тут причём?
так мы тут мнениями делимся) я сказал в чем отличие
Line'R
Есть вариант как избавиться от немного дерганной анимации? Лайоут не тяжёлый, там лагать впринципе нечему
Кирилл
так мы тут мнениями делимся) я сказал в чем отличие
Не, я вообще имею ввиду: причём тут kae/vb и camelCase?
Mike
разве что idшники раздавать в camel)
при чём здесь Kotlin Android Extensions? Кто-нибудь другой победил эту “проблему”?
karvinok
при чём здесь Kotlin Android Extensions? Кто-нибудь другой победил эту “проблему”?
viewBinding же переводит snake_case в camelCase, вот и все отличия. а где проблема?
Кирилл
Те же дефолтные айдишники, которые тебе ставит android studio, в camelCase.
karvinok
наверное ты прав. мне кажется в рулах для xml просто стоят snake_case, поэтому все их используют. когда дорабатываешь проект и там весь xml на snake - ты уже будешь в любом случае следовать имею ввиду, когда пришел на доработку проекта, а не с нуля писать
Aleks
Привет, может ли Html.fromHtml показывть картинки?
Elron
гугл вроде говорит что в xml надо писать в snake_case, а код в camelCase
karvinok
но дефолтные xml генерит camel действительно) как не странно
Elron
а в случае с датабиндингом нижнее подчеркивание как бы говорит что следующий символ должен быть в верхнем регистре и т.о. он в коде становится camelCase
Alexey
Привет, может ли Html.fromHtml показывть картинки?
у этого метода есть вариант с параметром imageGetter, через него можно задать создание Drawable для картинок
Elron
но пофакту датабинг понимает без snake_case
Maksym
Всем привет. Кто знает почему на некоторых девайсах не запускается камера при использовании ее SurfaceView? При запуске просто темный экран. Использовал подобный подход https://github.com/prakashpun/TextRecognitionAndroid/blob/master/app/src/main/java/com/tuts/prakash/simpleocr/MainActivity.java
MrSyabro
Ох, привет!
MrSyabro
Та не, привет
MrSyabro
Ладно, если бы тут дискуссия шла полным ходом и мой привет помешал, но нет..
Mike
Та не, привет
фига дерзкий)
Alexey
Ща забанят
Mike
Ща забанят
ща тебя забаню за дезинформацию
MrSyabro
хех
MrSyabro
Я даже скрин сделал, что бы потом жаловаться в других групах 😂
Mike
Иди в школу
предупреждение
MrSyabro
👌