군침이 싹 도는 코딩
RecyclerView 와 Adapter 를 이용하여 리스트를 화면에 표시하는 법 본문
package com.mugoori.contactapp;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import com.mugoori.contactapp.adapter.ContactAdapter;
import com.mugoori.contactapp.data.DatabaseHandler;
import com.mugoori.contactapp.model.Contact;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
Button btnAdd;
// 리사이클러뷰를 사용할때
// RecyclerView, Adapter, ArrayList 를 쌍으로 적어라
RecyclerView recyclerView;
ContactAdapter adapter;
ArrayList<Contact> contactList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnAdd = findViewById(R.id.btnAdd);
// 리사이클러뷰를 화면에 연결하고 쌍으로 같이 다니는 코드도 작성
recyclerView = findViewById(R.id.recyclerView);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(MainActivity.this));
btnAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,AddActivity.class);
startActivity(intent);
}
});
// db 로부터 데이터를 가져와서 리사이클러뷰에 표시하자
DatabaseHandler db = new DatabaseHandler(MainActivity.this);
contactList = db.getAllContacts();
db.close();
// 어댑터를 만든다
adapter = new ContactAdapter(MainActivity.this,contactList);
// 어댑터를 리사이클러뷰에 셋팅
recyclerView.setAdapter(adapter);
}
}
# 리사이클러뷰를 사용해서 화면에 리스트를 표시해보았다
전글에서 만든 Adapter 를 이용한다
public class MainActivity extends AppCompatActivity {
Button btnAdd;
// 리사이클러뷰를 사용할때
// RecyclerView, Adapter, ArrayList 를 쌍으로 적어라
RecyclerView recyclerView;
ContactAdapter adapter;
ArrayList<Contact> contactList;
# 리사이클러뷰를 사용할때에는 멤버변수를 작성할때
RecyclerView, Adapter, ArrayList 3개를 묶어서 써준다
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnAdd = findViewById(R.id.btnAdd);
// 리사이클러뷰를 화면에 연결하고 쌍으로 같이 다니는 코드도 작성
recyclerView = findViewById(R.id.recyclerView);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(new LinearLayoutManager(MainActivity.this));
# 화면에 연결하는 코드를 작성할때에도 findViewById 와
setHasFixedSize( true ), setLayoutManager 도 작성해준다
btnAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,AddActivity.class);
startActivity(intent);
}
});
// db 로부터 데이터를 가져와서 리사이클러뷰에 표시하자
DatabaseHandler db = new DatabaseHandler(MainActivity.this);
contactList = db.getAllContacts();
db.close();
// 어댑터를 만든다
adapter = new ContactAdapter(MainActivity.this,contactList);
// 어댑터를 리사이클러뷰에 셋팅
recyclerView.setAdapter(adapter);
# 이제 db로부터 데이터를 가져와서 리사이클러뷰에 넣어주고
어댑터를 리사이클러뷰와 연결시켜주면 된다
# 리사이클러뷰가 작동이 잘 되는것을 확인할 수 있다
'Android' 카테고리의 다른 글
리사이클러뷰에서 몇 번째 행을 눌렀는지 알 수 있는 어댑터의 함수 ( getAdapterPosition() ) (0) | 2023.02.01 |
---|---|
리사이클러뷰 어댑터에서 새로운 액티비티 실행하는 방법 (0) | 2023.02.01 |
Adapter 만드는 법 (0) | 2023.02.01 |
메뉴 아이콘 이미지를 백터 이미지로 만드는 방법 (0) | 2023.01.31 |
SQLite 3 데이터 베이스 활용하는 법 ( SQLiteOpenHelper ) (0) | 2023.01.31 |