Size: a a a

StartAndroid Ru Chat

2020 June 22

AD

Andrei Danilenko in StartAndroid Ru Chat
а можно сделать поле автоинкремент но не праймари кей? (room)
источник

ES

Egor Sigolaev in StartAndroid Ru Chat
Andrei Danilenko
а можно сделать поле автоинкремент но не праймари кей? (room)
Ну в основном как раз по праймари кей делают выборку, и автоинкремент нужен всегда. Какой смысл без праймери кей?
источник

N

Nixon in StartAndroid Ru Chat
Всем привет. Подскажите, как поступить в следующей ситуации: есть два источника - локальная бд и удалённая. С помощью zip я объединяю их в один лист и прокидываю в адаптер recyclerview. Следом, при обновлении пункта в recyclerview я обновляю этот пункт в  локальной бд и система прокидывает обновления в список через livedata. Проблема в том, что если связи с сервером нет, то всё работает, а если связь есть, то livedata не получает обновление списка. Как правильно организовать обновление списка, если связь с сервером есть?
источник

А

Андрей in StartAndroid Ru Chat
Nixon
Всем привет. Подскажите, как поступить в следующей ситуации: есть два источника - локальная бд и удалённая. С помощью zip я объединяю их в один лист и прокидываю в адаптер recyclerview. Следом, при обновлении пункта в recyclerview я обновляю этот пункт в  локальной бд и система прокидывает обновления в список через livedata. Проблема в том, что если связи с сервером нет, то всё работает, а если связь есть, то livedata не получает обновление списка. Как правильно организовать обновление списка, если связь с сервером есть?
А как ты получаешь элементы из бд?
Можно оттуда тянуть  сразу Livedata/Flow и при обновлении БД все будет автоматом работать.
источник

N

Nixon in StartAndroid Ru Chat
Андрей
А как ты получаешь элементы из бд?
Можно оттуда тянуть  сразу Livedata/Flow и при обновлении БД все будет автоматом работать.
Из бд у меня flowable. Но, видимо, из-за zip(remoteDB.onError(local)) при имеющемся подключении к серверу не доходит до local и обновления нет
источник

J

J.S in StartAndroid Ru Chat
всем привет! как скрыть bottomSheetBehavior если был зарегистрирован клик вне bottomSheet

нашел решение в stackOverFlow :
https://stackoverflow.com/questions/38185902/android-bottomsheet-how-to-collapse-when-clicked-outside

но там  мне не понятен что за тип bottomSheet
источник

G

Ganny in StartAndroid Ru Chat
J.S
всем привет! как скрыть bottomSheetBehavior если был зарегистрирован клик вне bottomSheet

нашел решение в stackOverFlow :
https://stackoverflow.com/questions/38185902/android-bottomsheet-how-to-collapse-when-clicked-outside

но там  мне не понятен что за тип bottomSheet
bottomSheet это ваша вьюшка, которая скрывается. Метод getGlobalVisibleRect вызывается у класса View
источник

J

J.S in StartAndroid Ru Chat
спасибо все понял! как же с... все элементарно
источник

YN

Yerlan Nurakhmetov in StartAndroid Ru Chat
J.S
всем привет! как скрыть bottomSheetBehavior если был зарегистрирован клик вне bottomSheet

нашел решение в stackOverFlow :
https://stackoverflow.com/questions/38185902/android-bottomsheet-how-to-collapse-when-clicked-outside

но там  мне не понятен что за тип bottomSheet
Тебе точно не нужен bottom sheet dialog fragment?
источник

J

J.S in StartAndroid Ru Chat
J.S
спасибо все понял! как же с... все элементарно
Код уже есть , надо было сделать update , а переделывать его в bottomSheetDialogFragment что-то не охота
источник

YN

Yerlan Nurakhmetov in StartAndroid Ru Chat
J.S
Код уже есть , надо было сделать update , а переделывать его в bottomSheetDialogFragment что-то не охота
Это update костылём..
источник

J

J.S in StartAndroid Ru Chat
Yerlan Nurakhmetov
Это update костылём..
Есть пример вашего кода с bottomSheetDialogFragment так скажем без костылей ?
источник

DG

Denis Gaponov in StartAndroid Ru Chat
Всем привет. Подскажите, пожалуйста, в ситуации:
В активити есть lateinit переменная
Инциализируется она в viewmodel observe

остальной код ссылается на эту переменную, но это происходит быстрее, чем она успевает проинициализироваться
Как мне её подождать?
источник

I

Ivan in StartAndroid Ru Chat
Denis Gaponov
Всем привет. Подскажите, пожалуйста, в ситуации:
В активити есть lateinit переменная
Инциализируется она в viewmodel observe

остальной код ссылается на эту переменную, но это происходит быстрее, чем она успевает проинициализироваться
Как мне её подождать?
Либо не использовать lateinit (а взять nullable, например), либо https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/is-initialized.html
источник

G

Ganny in StartAndroid Ru Chat
скорее всего архитектурная ошибка, если такая ситуация возникает.

Вью не должна хранить какие-либо переменные, по хорошему
источник

G

Ganny in StartAndroid Ru Chat
точнее переменные, которые зависят от модели.
Обращайтес напрямую к переменной во ВьюМодел, а из вью уберите
источник

DG

Denis Gaponov in StartAndroid Ru Chat
Ivan
Либо не использовать lateinit (а взять nullable, например), либо https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/is-initialized.html
С nullable упрусь в ту же проблему, только весь остальной код будет ссылаться на null.
IsInit не вариант, так как код, что ниже, исполняется один раз и просто не будет выполнен

Мне нужна конструкция как раз что-то вида wait (lateinitVar.isInit) { дальше}
источник

I

Ivan in StartAndroid Ru Chat
Denis Gaponov
С nullable упрусь в ту же проблему, только весь остальной код будет ссылаться на null.
IsInit не вариант, так как код, что ниже, исполняется один раз и просто не будет выполнен

Мне нужна конструкция как раз что-то вида wait (lateinitVar.isInit) { дальше}
почему бы из Observe на запускать этот код просто?
источник

I

Ivan in StartAndroid Ru Chat
скорее всего про архитектурную ошибку правильно написали
источник

DG

Denis Gaponov in StartAndroid Ru Chat
Ganny
скорее всего архитектурная ошибка, если такая ситуация возникает.

Вью не должна хранить какие-либо переменные, по хорошему
Определённо, это костыль сейчас. Там просто некоторые другие проблемы мне помешали сразу норм сделать😅
источник