Menggunakan Recyclerview untuk membuat list
jumpa lagi sobat...
Artikel kali ini saya akan membahas mengenai Recyclerview, Recyclerview digunakan untuk membuat list.. Sebulum adanya recyclerview kalau menbuat list menggunakan listview, menurut dokumentasi dari google recyclerview lebih fleksibel daripada listview. untuk perbandinganya bisa dibaca pada link ini
Ok.. langsung saja kita buat list dengan recyclerview...
agar bisa membuat list dengan recyclerview kita harus menambahkan depencey recyclerview pada app->build.gradle seperti berikut :
setalah itu sync gradle dulu sebelum menggunakanya, seteah sync selesai berarti kalian bisa menggunaknya.. selanjut nya buat class model untuk list --> model.java
setelah itu kita buat layout dari item list --> layout->item_list.xml seperti dibawah ini :
berikutnya letakan recyclerview pada layout yang akan kalian, saya meletakanya pada activity_main.xml bagian content :
berikutnya deklarasikan Adapter dan Recyclerview pada class MainActivity.java seperti berikut pada method onCreate :
setelah itu panggil method listMode pada method onCreate agar data bisa muncul.... seperti pada gambar dibawah ini:
Sekian artikel ini semoga bermanfaat.. Apabila ada pertanyaan ataupu saran tulis pada komentar
dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.1.1' compile 'com.android.support:design:23.1.1' compile 'com.android.support:recyclerview-v7:23.1.1' }
setalah itu sync gradle dulu sebelum menggunakanya, seteah sync selesai berarti kalian bisa menggunaknya.. selanjut nya buat class model untuk list --> model.java
public class Model { String nama, alamat; public Model(String nama, String alamat) { this.nama = nama; this.alamat = alamat; } public String getNama() { return nama; } public void setNama(String nama) { this.nama = nama; } public String getAlamat() { return alamat; } public void setAlamat(String alamat) { this.alamat = alamat; } }
setelah itu kita buat layout dari item list --> layout->item_list.xml seperti dibawah ini :
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:focusable="true" android:paddingLeft="16dp" android:paddingRight="16dp" android:paddingTop="10dp" android:paddingBottom="10dp" android:clickable="true" android:background="?android:attr/selectableItemBackground"> <TextView android:id="@+id/nameList" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="18sp" android:textStyle="bold" android:layout_marginStart="20dp"/> <TextView android:id="@+id/alamatList" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="14sp" android:layout_below="@+id/nameList" android:layout_marginStart="20dp"/> </RelativeLayout>
berikutnya letakan recyclerview pada layout yang akan kalian, saya meletakanya pada activity_main.xml bagian content :
<android.support.v7.widget.RecyclerView android:id="@+id/recyler" android:layout_marginTop="?attr/actionBarSize" android:layout_width="match_parent" android:layout_height="wrap_content"/>selanjutnya buat adapter untuk penempatan list_item pada recyclerview --> java->RecyclerviewAdapter.java seperti berikut :
import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import java.util.List; /** * Created by ahmad on 1/23/16. */ public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerAdapter.ViewHolder> { private List<Model> modelList; public RecyclerAdapter(List<Model> modelList) { this.modelList = modelList; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()) .inflate(R.layout.item_list, parent, false); return new ViewHolder(view); } @Override public void onBindViewHolder(ViewHolder holder, int position) { Model model = modelList.get(position); holder.nama.setText(model.getNama()); holder.alamat.setText(model.getAlamat()); } @Override public int getItemCount() { return modelList.size(); } public class ViewHolder extends RecyclerView.ViewHolder { final TextView nama, alamat; public ViewHolder(View itemView) { super(itemView); nama = (TextView) itemView.findViewById(R.id.nameList); alamat = (TextView) itemView.findViewById(R.id.alamatList); } } }
berikutnya deklarasikan Adapter dan Recyclerview pada class MainActivity.java seperti berikut pada method onCreate :
recyclerView = (RecyclerView) findViewById(R.id.recyler); recyclerView.setLayoutManager(new LinearLayoutManager(getApplicationContext())); recyclerView.setHasFixedSize(true); adapter = new RecyclerAdapter(modelList); recyclerView.setAdapter(adapter);kita memerlukan data untuk mengisi recyclerview... buat method method list model pada class mainActivity.java seperti berikut :
private void listModel(){ Model model; model = new Model("ali", "banyuwangi"); modelList.add(model); model = new Model("budi", "blitar"); modelList.add(model); model = new Model("wawan", "jember"); modelList.add(model); model = new Model("riski", "ngawi"); modelList.add(model); model = new Model("alfin", "malang"); modelList.add(model); model = new Model("feri", "kudus"); modelList.add(model); adapter.notifyDataSetChanged(); }
setelah itu panggil method listMode pada method onCreate agar data bisa muncul.... seperti pada gambar dibawah ini:
Sekian artikel ini semoga bermanfaat.. Apabila ada pertanyaan ataupu saran tulis pada komentar
0 comments: