android - How to retrieve web service values through Retrofit to text view? -
i'm developing app , in first activity has card view layout. i'm retrieving data webservice , relevant data showed in card view. it's working well. when user clicks particular card view need go activity. i'm getting relevant id card view , passing second activity. in second activity need show content according unique id. i'm not getting thing. tried.
pojo class
public class promodetails { string promoid; string promoname; string promoimg; string promodetails; string promovalidty; public promodetails(string promoid, string promoname, string promoimg , string promodetails , string promovalidity) { this.promoid = promoid; this.promoname = promoname; this.promoimg = promoimg; this.promodetails = promodetails; this.promovalidty = promovalidity; } public string getpromoid() { return promoid; } public void setpromoid(string promoid) { promoid = promoid; } public string getpromoname() { return promoname; } public void setpromoname(string promoname) { promoname = promoname; } public string getpromoimg() { return promoimg; } public void setpromoimg(string promoimg) { promoimg = promoimg; } public string getpromodetails() { return promodetails; } public void setpromodetails(string promodetails) { this.promodetails = promodetails; } public string getpromovalidty() { return promovalidty; } public void setpromovalidty(string promovalidty) { this.promovalidty = promovalidty; }} apiinterface
public interface apiinterface { @post("ap/promotions.php") call<list<promotions>> getpromotions(); @get("test.php/promotions/{promoid}") call<list<promodetails>> getpromotdetails(@path("promoid") string promoid) ;} new activity class
public class promotionsinside extends activity { private apiinterface apiinterface; private list<promodetails> promodetails; textview prdescription; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.promo_inside); bundle extras = getintent().getextras(); string promoid = ""; if (extras != null) { promoid = extras.getstring("promo_id"); getpromotionupdate(promoid); } } private void getpromotionupdate(string mypromoid) { apiinterface = apiclient.getapiclient().create(apiinterface.class); call<list<promodetails>> call = apiinterface.getpromotdetails(mypromoid); call.enqueue(new callback<list<promodetails>>() { @override public void onresponse(call<list<promodetails>> call, response<list<promodetails>> response) { promodetails = response.body(); runonuithread(new runnable() { @override public void run() { prdescription = (textview)findviewbyid(r.id.promodescriptionsss) ; prdescription.settext(promodetails.get(0).getpromoname()); } }); } @override public void onfailure(call<list<promodetails>> call, throwable t) { } }); }}
i have similar case. try use start second activity:
intent intent = new intent(this, promotionsinside.class); //make sure put string id in intent intent.putextra("promo_id", id); startactivity(intent); and in second activity:
if (getintent().hasextra("promo_id")) { string id = getintent().getstringextra("promo_id", null); //next steps need } hope you
Comments
Post a Comment