Size: a a a

Android Developers

2020 September 02

B

Boroda in Android Developers
не понимаю накуя? это уровень вью, вот во фрагменте/активити и валидируй, а то вьюха в одном классе, валидация в другом, что за херня
источник

ES

Egor Sigolaev in Android Developers
Boroda
не понимаю накуя? это уровень вью, вот во фрагменте/активити и валидируй, а то вьюха в одном классе, валидация в другом, что за херня
Я бы вообще сделал один метод во вм, который вернет тру или фолс по заполненности полей. А внутри сделал бы дофига if else. Мне кажется это лучше, чем лайвдата код.
источник

ES

Egor Sigolaev in Android Developers
Egor Sigolaev
Я бы вообще сделал один метод во вм, который вернет тру или фолс по заполненности полей. А внутри сделал бы дофига if else. Мне кажется это лучше, чем лайвдата код.
И одну бы лайвдату пулял для состояния кнопки
источник

B

Boroda in Android Developers
ды так и надо имхо, мож тут более искушенные есть, которые перед транзакцией в бд валидируют, на уровне модели
источник

B

Boroda in Android Developers
так вернемся к с-подобному коду, где функция вертала код операции, а данные аргументом шли, пипец
источник

V

VKovalyov in Android Developers
Egor Sigolaev
Что за форма?
под формой я понимаю такую observable хрень, которая по сути холдер для кучи полей.

MyViewModel : ViewModel {
val form = MyForm()
class MyForm() : BaseObservable() {
//можно так
val myStringValue1 = ObservableField<String>()

//или так
@get:Bindable
var myStringValue3: String
set(value) {
   field = value
   notifyPropertyChanged(BR.myFildValue) //можем вешать листенер на изменение
}
}

//напиши валидатор сам
val myStringValue3 = ObservableFieldWithValidator<String>()
}


так у тебя будет 1 холдер всего, за которым можно следить как угодно. myStringValue3 будет иметь свой како-то валидатор (допустим, у тебя есть валидатор на имя юзера, пароль, на возраст для каждого поля со своими правилами), и можно их скопом проверять. или ошибки показывать динамически


типа так
источник

B

Boroda in Android Developers
Egor Sigolaev
И одну бы лайвдату пулял для состояния кнопки
просто вот тупо открываешь
https://developer.android.com/topic/libraries/architecture/livedata
LiveData is an observable data holder class.
Данные невалидны, херли им в ливдате-то делать?
источник

ES

Egor Sigolaev in Android Developers
Boroda
просто вот тупо открываешь
https://developer.android.com/topic/libraries/architecture/livedata
LiveData is an observable data holder class.
Данные невалидны, херли им в ливдате-то делать?
Ахаха, мне дали проект, а там каждая активити с миллионом лайвдат внутри вм...
источник

V

VKovalyov in Android Developers
имхо лайвдата нужна для каких-то списков, а не для датабиндинга, как вроде бы чувак хочет. или не хочет. но понял что не хочет, но он сам этого не хочет )
источник

B

Boroda in Android Developers
VKovalyov
имхо лайвдата нужна для каких-то списков, а не для датабиндинга, как вроде бы чувак хочет. или не хочет. но понял что не хочет, но он сам этого не хочет )
да тупняк это косорогий через ливдату валидировать, давай просто признаем это)
источник

V

VKovalyov in Android Developers
ну  предложил вариант, чо) вдруг полезно будет
источник

ES

Egor Sigolaev in Android Developers
Boroda
да тупняк это косорогий через ливдату валидировать, давай просто признаем это)
Всё, короче, пойду снесу всю лайвдату эту, сделаю обычные проверки. Спасибо всем.
источник

V

VKovalyov in Android Developers
Egor Sigolaev
Всё, короче, пойду снесу всю лайвдату эту, сделаю обычные проверки. Спасибо всем.
сделай как я вон показал. 100% рабочий вариант)
источник

B

Boroda in Android Developers
Egor Sigolaev
Всё, короче, пойду снесу всю лайвдату эту, сделаю обычные проверки. Спасибо всем.
ты тока подумай, если там идея в том чтобы сохранять в ливдате промежуточное состояние заполненности полей (типа свернул апп, поиграл в фортнайт, развернул апп - все данные на месте, активити из сэйвединстансстейт воскресло), то надо тогда реально ливдату.
источник

ES

Egor Sigolaev in Android Developers
Boroda
ты тока подумай, если там идея в том чтобы сохранять в ливдате промежуточное состояние заполненности полей (типа свернул апп, поиграл в фортнайт, развернул апп - все данные на месте, активити из сэйвединстансстейт воскресло), то надо тогда реально ливдату.
У меня только портрет, горизонта не будет.
источник

🇲

🇲 owo mir 🇲 in Android Developers
Кто может помочь? Скорость скачки файла Очень медленная (400кб/с стабильно макс) - код
источник

B

Boroda in Android Developers
Egor Sigolaev
У меня только портрет, горизонта не будет.
да не в портрете и горизонте дело, какая разница-то.
источник

ES

Egor Sigolaev in Android Developers
Boroda
да не в портрете и горизонте дело, какая разница-то.
Ну я имею ввиду, что пересоздания практически не будет
источник

ES

Egor Sigolaev in Android Developers
Я уже позабочусь об этом)
источник

B

Boroda in Android Developers
говорю, свернул апп, развернул - активити дохлое
источник