Android

[안드로이드] 안드로이드스튜디오(Android Studio), 리스트뷰(ListView)에 동적으로 아이템 추가하기, Dynamically add items to the listView, notifyDataSetChanged(), 안드로이드 예제, 안드로이드 강좌

정보처리마법사 2016. 8. 19. 13:03
반응형

 

 

[안드로이드] 안드로이드스튜디오(Android Studio), 리스트뷰(ListView)에 동적으로 아이템 추가하기, Dynamically add items to the listView, notifyDataSetChanged(),  안드로이드 예제, 안드로이드 강좌

 

 

안녕하세요 정보처리마법사 입니다.

이번 포스팅의 주제는 리스트뷰(ListView)에 동적으로 아이템 추가하기에 관한 내용입니다.

에디트텍스트가 하나 있고 버튼이 하나 있고 리스트뷰가 있는 상태에서 에티트텍스트에다가 추가할 아이템을 타이핑한 후 버튼을 클릭하면 리스트뷰에 동적으로 아이템이 추가되는 예제를 살펴보겠습니다.

 

레이아웃입니다.

EditText, Button, ListView 가 LinearLayout 내에 있고

모두 default에서 width 만 match_parent로 살짝 수정했습니다.

 

MainActivity입니다. 

버튼을 클릭했을 때 리스트뷰와 연동된 ArrayAdapter의 데이터를 변경한 후에 변경됐다는 사실을 ArrayAdapter에 통지하기만 하면 됩니다.

carList = new ArrayList<String>();

carList.addAll(Arrays.asList(cars));

자동차(제조사) 리스트를 가지고 있는 배열인 cars의 데이터를 모두 Arrays.asList()메소드를 사용해서 컬렉션으로 변환한 다음에 carList에 addAll()메소드로 추가하고 있습니다.

 

carList.add(0, nameText.getText().toString());

버튼을 클릭했을 때 carList에 사용자가 입력한 텍스트를 추가합니다.

 

adapter.notifyDataSetChanged();

notifyDataSetChanged()메소드를 호출하면 데이터가 변경된 것을 리스트뷰에 알려줄 수 있습니다.

 

 

실행화면 입니다.

 

 

 

 

리스트뷰에 동적으로 아이템 추가하는 방법이었습니다.

 

 

참고서적 : 200개의 단계별 예제로 배우는 안드로이드 4.0 [제이펍]


 

 

 

 

이상으로 포스팅을 마칩니다. 감사합니다.

 

 

 

 

잘 못 된 정보가 있으면 말씀해주세요.

공감버튼 클릭은 작성자에게 큰 힘이 됩니다.  행복한 하루 되세요.

 

“파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음"

반응형