마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

디비에 저장된 목록들을 리스트뷰에 뿌리려고하는데요

0 추천

대부분의 예제를 보면 이런식으로 객체를 저장하는 리스트 생성한뒤 어댑터를 생성하여 리스트와 xml레이아웃을 설정뒤 어댑터를 이용하여 직.접 데이터를 추가하는데.. 

저는 이미 저장된 디비에서 추출해와서 제가 작성한 리스트뷰의 각 행을 꾸릴 listviewitem에 항목별로 넣고싶은데 이부분은 어떻게 구현할까요...? 

따로 add안하고 그냥 막바로 리스트뷰에 setadapter해서 부착하면 되나요?

어떻게해야 listviewitem.xml (=커스텀리스트뷰 각각행을 구성할뷰)로 접근해서 저장된 디비목록을 리스트뷰에 뿌릴수있을까요?ㅠㅠ 너무어렵네용 ㅠ.ㅠ 

ArrayList<listviewitem> data=new ArrayList<>();
adapter = new ArrayAdapter(this,R.layout.listviewitem,data);
adapter.add(new listviewitem(R.drawable.red,"고소한","010-9999-9999","여자");
listviewitem.java
public class listviewitem {
    private int m_icon =0; //케익사진
    private String m_name =null; //이름
    private String m_date = null; //날짜
     private String m_dday = null; //디데이


    public listviewitem(int icon,String date,String name,String dday){
        this.m_icon=icon;
        this.m_date=date;
        this.m_name=name;
        this.m_dday=dday;
    }
    public void setIcon(int icon){m_icon=icon;}
    public void setDate(String date){m_date=date;}
    public void setName(String name){m_name=name;}
    public void setDday(String dday){m_dday=dday;}
    public int getIcon(){return m_icon;}
    public String getName(){return m_name;}
    public String getDate(){return  m_date;}
    public String getDday(){return m_dday;}
}
뚜루루루둡 (1,130 포인트) 님이 2016년 5월 24일 질문
뚜루루루둡님이 2016년 5월 24일 수정

1개의 답변

+1 추천
 
채택된 답변

중요한건 Adapter 입니다.

리스트 화면에서는 어댑터 지금 처럼 생성하시고,

어댑터에서는  extends ArrayAdapter<listviewitem>으로 ArrayAdapter를 상속받으시고,

ArrayList<listviewitem> data=new ArrayList<>();

이것과 같은 변수를 하나 만듭니다.

생성자에서는 전달받은 data를 생성한 list변수에 넣어줍니다.

getCount() 에서는 list.size(); 해주시고,

getView는 그대로 구현 하시면 됩니다.

화면단에서 데이터의 변화가 생기면 adapter.notifyDataSetChanged(); 로 새로고침 하시면 됩니다.

 

캬옹이 (37,920 포인트) 님이 2016년 5월 25일 답변
뚜루루루둡님이 2016년 6월 20일 채택됨
...