Mobile Programming Pertemuan 9 Modul
Mobile Programming Pertemuan 9 Modul
Kom
PERTEMUAN 9:
IMPLEMENTASI RECYCLERVIEW DAN LISTVIEW DALAM
APLIKASI ANDROID
@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent,
int viewType) {
View itemView =
LayoutInflater.from(parent.getContext()).inflate(android.R.layout.simple
_list_item_1, parent, false);
return new MyViewHolder(itemView);
}
@Override
public void onBindViewHolder(@NonNull MyViewHolder holder, int
position) {
holder.textView.setText(dataList.get(position));
}
@Override
public int getItemCount() {
return dataList.size();
}
2
Septa, S.Kom., M.Kom
3
Septa, S.Kom., M.Kom
b. Membuat Layout
1. Edit layout untuk Aplikasi Latihan 9 di res/layout/activity_main.xml.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
4
Septa, S.Kom., M.Kom
</RelativeLayout>
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.SearchView;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import java.util.ArrayList;
import java.util.List;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Inisialisasi komponen UI
contactListView = findViewById(R.id.contactListView);
contactRecyclerView =
findViewById(R.id.contactRecyclerView);
searchView = findViewById(R.id.searchView);
5
Septa, S.Kom., M.Kom
@Override
public boolean onQueryTextChange(String newText) {
filteredContactList.clear();
for (String contact : contactList) {
if
(contact.toLowerCase().contains(newText.toLowerCase())) {
filteredContactList.add(contact);
}
}
listViewAdapter.notifyDataSetChanged();
recyclerViewAdapter.notifyDataSetChanged();
return false;
}
});
}
@Override
public ContactViewHolder onCreateViewHolder(ViewGroup
parent, int viewType) {
View view =
LayoutInflater.from(parent.getContext()).inflate(android.R.layout
.simple_list_item_1, parent, false);
return new ContactViewHolder(view);
}
@Override
public void onBindViewHolder(ContactViewHolder holder,
int position) {
holder.textView.setText(contactList.get(position));
}
@Override
public int getItemCount() {
return contactList.size();
}
6
Septa, S.Kom., M.Kom
RecyclerView.ViewHolder {
TextView textView;
d. Jalankan Aplikasi
Jalankan Aplikasi klik tombol play atau shift + f10 hasilnya seperti berikut: