android - change fab.onclicklistener to intent -
i have problem on change fab button click intent alatactivity.java
public class alatactivity extends appcompatactivity { static string urladdress="https://marimuncak.000webhostapp.com/getalat.php"; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.alat_main); toolbar toolbar = (toolbar) findviewbyid(r.id.toolbar); setsupportactionbar(toolbar); final gridview gv= (gridview) findviewbyid(r.id.gv); floatingactionbutton fab = (floatingactionbutton) findviewbyid(r.id.fab); fab.setonclicklistener(new view.onclicklistener() { @override public void onclick(view view) { new downloaderalat(alatactivity.this,urladdress ,gv).execute(); } }); } } and intent in
imageview favbtn = (imageview) findviewbyid(r.id.favbtn); favbtn.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { intent = new intent(mainactivity.this, alatactivity.class); startactivity(i); } }); and downloaderalat.java
public class downloaderalat extends asynctask<void,void,string> { context c; string urladdress; gridview gv; progressdialog pd; public downloaderalat(context c, string urladdress, gridview gv) { this.c = c; this.urladdress = urladdress; this.gv = gv; } @override public void onpreexecute(){ super.onpreexecute(); pd = new progressdialog(c); pd.settitle("loading data alat"); pd.setmessage("mohon tunggu...."); pd.show(); } @override protected string doinbackground(void... params) { return this.downloaddata(); } @override public void onpostexecute(string jsondata){ super.onpostexecute(jsondata); pd.dismiss(); if (jsondata==null){ toast.maketext(c,"gagal load data",toast.length_short).show(); }else { parseralat parseralat= new parseralat(c, jsondata,gv); parseralat.execute(); } } private string downloaddata(){ httpurlconnection con= konektoralat.connect(urladdress); if(con==null){ return null; } try { inputstream is= new bufferedinputstream(con.getinputstream()); bufferedreader br= new bufferedreader(new inputstreamreader(is)); string line; stringbuffer jsondata= new stringbuffer(); while ((line=br.readline()) !=null) { jsondata.append(line+"\n"); } br.close(); is.close(); return jsondata.tostring(); } catch (ioexception e) { e.printstacktrace(); } return null; } } i want show gridview without click fab button,,, because when remove fab.setonclicklistener function,,, project error: cannot convert cardview gridview,, how can data in downloaderalat.java without click fab button?
okay alat_main.xml
<?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.coordinatorlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_height="match_parent" android:layout_width="match_parent" android:fitssystemwindows="true" tools:context=".alatactivity" > <android.support.design.widget.appbarlayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/apptheme.appbaroverlay" > <android.support.v7.widget.toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/colorprimary" app:popuptheme="@style/apptheme.popupoverlay"/> </android.support.design.widget.appbarlayout> <include layout="@layout/content_alat"/> <android.support.design.widget.floatingactionbutton android:id="@+id/fab" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="16dp" android:src="@android:drawable/ic_dialog_email"> </android.support.design.widget.floatingactionbutton> </android.support.design.widget.coordinatorlayout> and content_alat.xml
<?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.coordinatorlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_height="match_parent" android:layout_width="match_parent" android:fitssystemwindows="true" tools:context=".alatactivity" > <relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <android.support.v7.widget.cardview android:id="@+id/gv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:numcolumns="2" ></android.support.v7.widget.cardview> </relativelayout> </android.support.design.widget.coordinatorlayout>
from i've understood question, want make network call without having click on fab button.
public class alatactivity extends appcompatactivity { static string urladdress="https://marimuncak.000webhostapp.com/getalat.php"; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.alat_main); toolbar toolbar = (toolbar) findviewbyid(r.id.toolbar); setsupportactionbar(toolbar); gridview gv= (gridview) findviewbyid(r.id.gv); new downloaderalat(alatactivity.this,urladdress ,gv).execute(); } } try replacing above code in alatactivity.class
change layout file below code -
<?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.coordinatorlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_height="match_parent" android:layout_width="match_parent" android:fitssystemwindows="true" tools:context=".alatactivity" > <relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <gridview android:id="@+id/gv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:numcolumns="auto_fit" ></gridview> </relativelayout> </android.support.design.widget.coordinatorlayout> let me know if need more help.
Comments
Post a Comment