Mike
а RecyclerView?
А есть более развёрнутое описание проблемы?
Ruslan
А есть более развёрнутое описание проблемы?
елементы списка адаптера как попадут в него? адаптер не пересоздавать чтоли?
Денис
Всем привет! постакжите плиз как программно заблокировать выход в интернет.
padmitriy
Кстати мокси похоже теперь заброшен. Баги в issues висят без ответа. Тогда больше нет вопросов по актуальности изучения)
Mikhail
последний коммит 10 месяцев назад
Mikhail
не, ты че, это теперь "стабильная, проверенная временем библиотека"
padmitriy
актуально сейчас это MVVM от гугла. Android is fun again!
не зашло. MVP кажется более простым, читаемым и лаконичным
Dj
не зашло. MVP кажется более простым, читаемым и лаконичным
И куча boileplate кода, в виде одного интерфейса и одной реализацией
Ruslan
Хранить адаптер, хранить список.
ну как вариант да, согласен) Ну это один из вопросов. Другой - не каждый разработчик кастомных view думает о сохранении состояния. И выходит, что для каждого такого view надо хранить поле.
Kyrylo
любитель датабиндинга?
не люблю датабиндинг. Причем тут это?
Mikhail
не люблю датабиндинг. Причем тут это?
при том, что MVVM это датабиндинг жеш
Dj
1 интерфейс это куча бойлерплейта?
На каждый чих создается лишние ненужные интерфейсы. И в смысле 1 интерфейс, у тебя в приложение один экран?
padmitriy
На каждый чих создается лишние ненужные интерфейсы. И в смысле 1 интерфейс, у тебя в приложение один экран?
а, то есть с мввм у тебя вообще всё само происходит, и никаких сущностей не создаешь?
Kyrylo
при том, что MVVM это датабиндинг жеш
уточню, MVVM от гугла – это architecture components и подход, описанный в Guide to app architecture. Датабиндинг – это библиотека.
padmitriy
*Лишних сущностей
а то, что неявно кодогенерится, не считаем?
Dj
Ты имел в виду неявное создание ViewModel? Да с этим соглашусь, гугл как всегда накосячила и заставила нас создавать помоечный Factory class для прокидывания зависимостей во ViewModel
Kyrylo
уточню, MVVM от гугла – это architecture components и подход, описанный в Guide to app architecture. Датабиндинг – это библиотека.
хотя если говорить о дата биндинге, как подходе, то тогда был не прав – я любитель дата биндинга. А чем этот подход плох?
Mikhail
когда ты должен несколькими пропертями описать все возможные состояния экрана, появляются флажочки
Mike
А при чём тут датабайндинг?
Kyrylo
У гугла нет MVVM.
можно раскрыть этот statement подробнее? :)
Mike
можно раскрыть этот statement подробнее? :)
Ну, обычно в мввм есть вьюмодели и датабайндинг. Вьюмоделей у гугла нет, датабайндинг есть, но полное говно, т. к. в xml.
Bohdan
Господа, а не подскажите как можно отслежить статус wifi подлючения?
Nikita
Господа как вы считаете на сколько безопасно использовать Google Smart Lock для приложения которое работает с деньгами ? Они нигде не пишут где и как сохраняют логины-пароли. Вроде штука удобная, но как то боязно отдавать им логин-пароль пользователя в открытом виде
Impossible
Всем привет. Подскажите пожалуйста ибо не могу нагуглить. Как можно передать шрифт атрибутом кроме как стрингу и обработать. custom_font: custom_font = "CustomFont.ttf" - такое написание не оч
Dmitry
Ну, обычно в мввм есть вьюмодели и датабайндинг. Вьюмоделей у гугла нет, датабайндинг есть, но полное говно, т. к. в xml.
Прошу прощения а то что гугл дал ViewModel это не ViewModel? 😊 LiveData это отчасти не data bind?
Mike
Прошу прощения а то что гугл дал ViewModel это не ViewModel? 😊 LiveData это отчасти не data bind?
AAC ViewModel — это не вьюмодель и никакого отношения к MVVM не имеет. LiveData — это обзёрвабл, про байндинг там ничего нет.
padmitriy
а шо не так с xml и как надо?
не надо логику пихать в разметку
Kyrylo
Data Binding handles much of the functionality of a client-sever application pretty nicely. If I change the actual value the column is updated, even changing the selected station alters the currently selected row in the record set, which causes the other controls to refresh.
--------
не надо логику пихать в разметку
ну если чуть чуть, то почему нет?)
Bohdan
Гугл наше все, но все-равно не могу нагуглить, например как мониторить ошибку подлючения из-за неверного пароля к wifi
Mike
а шо не так с xml и как надо?
с XML всё не так, а датабайндинг здорового человека выглядит так
padmitriy
ну если чуть чуть, то почему нет?)
НЕ НАДО, потом концов не соберешь когда проект вырастет
Nikita
ну если чуть чуть, то почему нет?)
Потому что потом ты про это забудешь и будешь неделю искать код в котором ошибка, а он у тебя в разметке
Mike
по Фаулеру, LiveData и есть дабабайндинг
Откуда Файлеру знать про лайвдату? Разве сам Фаулер не появился раньше Лайвдаты?
Dmitry
AAC ViewModel — это не вьюмодель и никакого отношения к MVVM не имеет. LiveData — это обзёрвабл, про байндинг там ничего нет.
но ты же вроде по факту подтягиваешь новые изменения согласно изменение какой то бизнес модели? ну это просто вброс
ᴀɴᴅʀᴇʏ
Кто-нибудь делал альфа-тестирование через google console? Есть несколько списков тестеров и мне нужно удалить все списки. Для этого я нажимаю на все чекбоксы и нажимаю на кнопку remove testers, что мне отвёт пишут что всё збс и сохранение произошло, но списки так и остаются. Писал в тех.поддержку, там мне порекомендовали делать через разные браузеры, инкогнито, кеш почистить и тп. Всё это я делал, но списки тестеров так и остаются. Причём я это делал ещё 4 месяца назад, но они так и висят.
Kyrylo
Откуда Файлеру знать про лайвдату? Разве сам Фаулер не появился раньше Лайвдаты?
я там скопировал описание дата байндинга по Фаулеру. И это описание очень подходит под описание LiveData
Mike
я там скопировал описание дата байндинга по Фаулеру. И это описание очень подходит под описание LiveData
LiveData — это один из нескольких инструментов, которые нужны для байндинга
Dmitry
сам подтягиваешь, сам байндишь. Гугл помогает тебе только морально)
ну тут согласен, ты типо когда тягиваешь какой нибудь шаблонизатор на html dom как в вебе это реализовано и больше ничего не делаешь а тупо меняешь саму модельку? 😊 а View Model гугловская почему не является ViewModel?
Dmitry
Всем привет! Кто-нибудь использовал input-mask-android от RedMadRobot?
Kyrylo
я вот все еще тоже не понял, почему концептуально, на хай левеле, описанная архитектура гуглом не является все же по большему счету MVVM.
Mike
Всем привет! Кто-нибудь использовал input-mask-android от RedMadRobot?
nometa.xyz куча людей использовали, классная либа
Kyrylo
А есть хоть одна причина, почему является? Кроме имени класса
опять же по Фаулеру, читаю Presentation Model: Represent the state and behavior of the presentation independently of the GUI controls used in the interface чем ViewModel не является Presentation Model?
Mikhail
и сравни с тем, что предоставляет жужль
Dmitry
А есть хоть одна причина, почему является? Кроме имени класса
я не прям силен на самом деле в этом, и нам от ViewModel конечно дают только название, но в принципе тебе не мешает из нее сделать полноценную ViewModel от которой будет зависить твое представление, по мимо этого она спокойно может обращаться к какому то бизнес слою... скажи реализация гавно полное и ViewModelStore... и фабрика с помщью которой это все создается.... но все же, они дали тебе store который живет вне зависимости от твоего жизненного цикла
Денис
Требуется написать приложение для TV-приставки, блокирующее полный доступ в интернет (youtube, браузер и т.д.) Подскажите плиз как реализовать нето гугл не дает ответ.
Dmitry
nometa.xyz куча людей использовали, классная либа
не могу реализовать поведение, связанное с телефоном. Если юзер вводит телефон с + или 7, то подставляем ему +7 (***)..., если юзер вводит телефон с 8, то 8 (***)..., но если с другой цифры, например 9, то надо подставить +7 (9**)... Вот с последним проблемы
Mike
статика? или saved state instance? 😊 с востановлением после поворота?
nonConfiguratoinInstance, где и живёт вьюмодель и ритейн-фрагменты
Dmitry
nonConfiguratoinInstance, где и живёт вьюмодель и ритейн-фрагменты
а чем это решение отличается от гугловского? 😊
Dmitry
и это не с android 1.0 добавили 😊
Dmitry
на сколько я помню
Mike
а чем это решение отличается от гугловского? 😊
Тем, что для него мне не нужно подключать стороннюю библиотеку с её зависимостями
Dmitry
фрагменты вообще гораздо позже появились
Dmitry
Тем, что для него мне не нужно подключать стороннюю библиотеку с её зависимостями
да зато в твоем коде надо разбираться, а тут есть общее решение на которое +/- есть дока и описание
Dmitry
и если расматривать этот инструмент как именно "производсвтенный" то он лучше чем самописный view model
Mike
да зато в твоем коде надо разбираться, а тут есть общее решение на которое +/- есть дока и описание
Нет, это в коде с ViewModel надо разбираться, доставать зависимости хрен пойми откуда из-за рефлексии и no-arg-конструктора, а non-configuration instance — это возможность SDK
Dmitry
Нет, это в коде с ViewModel надо разбираться, доставать зависимости хрен пойми откуда из-за рефлексии и no-arg-конструктора, а non-configuration instance — это возможность SDK
non-configuration instance тоже не всегда полезная штука 😊 там проблемы с locale начинаются и прочими веселухами 😊 когда ты сам решаешь что и как обрабатывать