Size: a a a

StartAndroid Ru Chat

2021 February 23

АЧ

Анатолий Чепига... in StartAndroid Ru Chat
Sergey Panov
Значит надо this
если вьюмодел надо делить между двумя фрагментами то наверное надо использовать activity. например в одном фрагменте добавляем в корзину покупок а в другом эту корзину отображаем
источник

Ф

Фёдор in StartAndroid Ru Chat
Анатолий Чепига
а как класть определенный фрагмент в бэкстек чтоб он не удалялся? только он один. в нем отображается recyclerview а для открытия элемента списка я переиспользую один и тот же фрагмент
Насколько я знаю, в NavComponent фрагменты по дефолту кладутся в бэкстэк
источник

J

Jonathan. in StartAndroid Ru Chat
привет.
есть множество фрагментов, на них кнопки (приложение пдд).
при нажатии на кнопку меняется её цвет. если с фрагмента (допустим первый) перейти на два вперёд (будет третий), то цвета кнопок на первом удаляются.

вопрос: как сохранить состояние элементов во фрагменте?
setRetainInstance не работает.
источник

IB

Ivan B in StartAndroid Ru Chat
безнадежно устал от Constraint лейаута
вроде по описаниям и примерам все клево - пробуешь то же самое, и всегда какие-то непонятки, кои нужны гуглить, копаться, выяснять...
достало
берешь линеар лейаут и рисуешь все что надо
источник

AS

Alex Suvorov in StartAndroid Ru Chat
Ivan B
безнадежно устал от Constraint лейаута
вроде по описаниям и примерам все клево - пробуешь то же самое, и всегда какие-то непонятки, кои нужны гуглить, копаться, выяснять...
достало
берешь линеар лейаут и рисуешь все что надо
А что не получается? Имхо топовая штука
источник

IB

Ivan B in StartAndroid Ru Chat
да в целом какието ходовые вещи, взять пару-тройку кнопок разместить в ширину,
под ними несколько скажем строк инфы,
сверху какие-нить кнопки по углам
что-то такое
источник

IB

Ivan B in StartAndroid Ru Chat
обратил внимение что ручная привязка часто дает ошибочный стринг
типа не ToptoTop а скажем TopToBottom коготото другого,
источник

IB

Ivan B in StartAndroid Ru Chat
пока это просечешь потом идти править это руками так неприятно в этих стрингах ковыряться, хочется все побыстрее кликами мыши а не фигачить что-то там в xml
источник

IB

Ivan B in StartAndroid Ru Chat
я понимаю что они там много накрутили возможностей, но вот с интуитивностью освоения беда, и студия ни черта в этом не помогает
источник

SP

Sergey Panov in StartAndroid Ru Chat
Ivan B
безнадежно устал от Constraint лейаута
вроде по описаниям и примерам все клево - пробуешь то же самое, и всегда какие-то непонятки, кои нужны гуглить, копаться, выяснять...
достало
берешь линеар лейаут и рисуешь все что надо
Будете рисовать в линеар лэйауте все что хотите пока не придётся разместить одну вью над другой по оси Z. Потом вернётесь к Constraint как миленькие.
источник

АЧ

Анатолий Чепига... in StartAndroid Ru Chat
Я почитал и чет все равно непонятно. ViewModelProvider вне зависимости от того где я вызываю viewmodel должен возвращать один и тот же инстанс.  Знатоки,  как эта чертовщина работает?
ViewModelProvider(this).get(className) при отсутсвии нужного обьекта класса создаст его с помощью фабрики положит заботливо в мапу и при последующих вызовах (даже если фрагмент уничтожен или просто исчез с ui ) он вернет тот же обьект? с тем самым содержимым livedata который был до уничтожения fragment?
источник

SP

Sergey Panov in StartAndroid Ru Chat
Анатолий Чепига
Я почитал и чет все равно непонятно. ViewModelProvider вне зависимости от того где я вызываю viewmodel должен возвращать один и тот же инстанс.  Знатоки,  как эта чертовщина работает?
ViewModelProvider(this).get(className) при отсутсвии нужного обьекта класса создаст его с помощью фабрики положит заботливо в мапу и при последующих вызовах (даже если фрагмент уничтожен или просто исчез с ui ) он вернет тот же обьект? с тем самым содержимым livedata который был до уничтожения fragment?
ViewModelProvider(this) в this передаём активити или фрагмент.
Вью модель будет одна и таже пока система не убъет приложение или ты сам не закроешь  фрагмент/активити.
источник

IB

Ivan B in StartAndroid Ru Chat
Sergey Panov
Будете рисовать в линеар лэйауте все что хотите пока не придётся разместить одну вью над другой по оси Z. Потом вернётесь к Constraint как миленькие.
ну во первых это далеко не самая частая задача лейаутов
во вторых и с этим мучался и даже здесь писал и меня тут посылали и в framlayout и прочее и чтото не было какогото легкого решения
проблема повторю не в том на что лейаут способен или не способен а насколько это интуитивно легко выпоняется
источник

АЧ

Анатолий Чепига... in StartAndroid Ru Chat
если я передам актвити то все окей и я могу сколько угодно скакать по фрагментам . модель валяется как мне надо. но если передать фрагмент он каждый раз пересоздает модель. даже если я в фрагменте инициализирую модель в oncreateView методе  , я же просто запрашиваю у ViewModelProvider ту же самую модель
источник

АЧ

Анатолий Чепига... in StartAndroid Ru Chat
ViewModelProvider инстанс создается для приложения или для каждого фрагмента?
источник

SP

Sergey Panov in StartAndroid Ru Chat
Анатолий Чепига
если я передам актвити то все окей и я могу сколько угодно скакать по фрагментам . модель валяется как мне надо. но если передать фрагмент он каждый раз пересоздает модель. даже если я в фрагменте инициализирую модель в oncreateView методе  , я же просто запрашиваю у ViewModelProvider ту же самую модель
Скорее всего неправильно меняете фрагменты
источник

AD

Alexey Devyatov in StartAndroid Ru Chat
Ivan B
безнадежно устал от Constraint лейаута
вроде по описаниям и примерам все клево - пробуешь то же самое, и всегда какие-то непонятки, кои нужны гуглить, копаться, выяснять...
достало
берешь линеар лейаут и рисуешь все что надо
Вот хороший видеоразбор https://www.youtube.com/watch?v=yZYOX6hRYFc
источник

IB

Ivan B in StartAndroid Ru Chat
спасибо посмотрю
источник

AS

Alex Suvorov in StartAndroid Ru Chat
Недавно кстати смотрел, пару штук новых приметил для себя
источник

АЧ

Анатолий Чепига... in StartAndroid Ru Chat
Sergey Panov
Скорее всего неправильно меняете фрагменты
вы правы. Я дебажил и метод onCreate  вызывается просто при переключении между фрагментами меню и даже когда делаю navigateUp из связанного фрагмента
источник