Aktywne Wpisy
marian-pxzz +124

vieniasn +200
sąsiada wnuk przyjechał z pewnego zachodniego kraju i drugie zdanie w rozmowie to było narzekanie na imigrantów tam
nie mam serca mu powiedzieć że sam nim jest
nie mam serca mu powiedzieć że sam nim jest





Mam formularz z kilkoma polami EditText i TextField, które wyświetlają informacje o tworzonym obiekcie. W zależności czy chcę dodać nowy obiekt czy go edytować to w Viemodelu tworzę pusty obiekt albo pobieram go sobie z Rooma i przypisuję do zmiennej zbindowanej z layoutem. No i na 10 przypadków pewnie z 6 jest okej, a te 4 nie ustawiają żadnej wartości przy edycji. Obiekt zawsze jest pobierany z bazy i przypisywany do tej samej zmiennej. Przy uzupełnianiu formularza wartości w obiekcie zawsze się zmieniają, ale na ekranie w zbindowanych TextFieldach nic się nie wyświetla. Czy ktoś spotkał się z podobnym problemem?
https://pastebin.com/BTLB87DY - Fragment
https://pastebin.com/ZiaW41fW - Viewmodel
https://pastebin.com/0iGqcsMg - Obiekt z Rooma
https://pastebin.com/W9ZvvSFR - layout
#androiddev #programowanie
Dziękuję za uwagę ( ͡° ͜ʖ ͡°)ノ⌐■-■
1. Czy
viewmodel.getPiggy()zwraca tylkomPiggy?2. Zamień na chwilę:
mViewBinding.setViewmodel(mViewModel);if (savedInstanceState ==
1. Tak, tylko mPiggy.
2. Tak jest, teraz przy każdej próbie działa dobrze.
3. Dzięki za feedback, spróbuję przepisać i poprawić :)
@Rubajticos: To jest akurat najgłupsze rozwiązanie:) Poprosiłem CIę o to, żeby sprawdzić, czy dobrze zrozumiałem kod.
Otóz problemem jest to, że podczas startu aplikacji podmieniasz zmienną
mPiggy. TenA co do tej apokalipsy co byś tutaj zalecił? Wydzielić walidację i pola z błędami od osobnej klasy? Wtedy zostanie w zasadzie samo entity i metody je jakoś modyfikujące. W ViewModelu mogę operować na samym entity czy jednak powinienem zrobić jakąś klasę opakowującą i przed zapisałem do bazy ją mapować na entity? W takiej sytuacji chyba bez sensu będzie BaseObservable na entity.
Fragment: https://pastebin.com/3DF4xMUB
Viewmodel: https://pastebin.com/00SdYCbR