android - is valid Mvp pattern implementation (with rxandroid and retrofit) -
i want data remote server using rxandroid in mvp repository. then,set grid adapter data(in fragment), , replace fragment tablet ui(in activity).
if use callback listener need @ least 2 callbacks, notify async(rxjava) done fragment , launch fragment first record data set.
is there alternative way solve problem other callback ??
actually not sure if using rxjava properly.
for pass observable fragment in order set adapter , launch new fragment returned data.
public <t> observable.transformer<t, t> applyschedulers() { return observable -> observable .subscribeon(schedulers.io()) .observeon(androidschedulers.mainthread()); } @override public observable<moviedatacontainer> getmoviebyfilter(string sortby, string apikey, int number) { movieapiservice movieapiservice= retrofit.createservice(movieapiservice.class); return movieapiservice .getmovielist(sortby,apikey,number) .compose(applyschedulers()); }
if not doing correct way please let me know. if have sample case, grateful
just in case here mygit repo
i create these components:
itemsview
,itemspresenter
displaying items list.detailsview
,detailspresenter
displaying item details.navigationhelper
managing navigation (eg. open new fragment)
flow this:
itemspresenter.loaddata()
loads data using rxjava , retrofit.itemspresenter
callsitemsview.showitems(list<items> list)
(inside have (adapter.setcontent(list)
)itemspresenter
callsnavigationhelper.showdetails(item selecteditem)
.navigationhelper
should behave differently depending on phone/tablet.
itemspresenter
behave differently phone , tablet. phone calls navigationhelper.showdetails
when user selects item list. table calls navigationhelper.showdetails
first item when data loaded. suggest pass knowledge phone/table via presenter's constructor.
for example of itemspresenter
-> itemsview
flow see presenter , view implementation
Comments
Post a Comment