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

다른클레스에서 listview 지우는 방법이 있을까요?

0 추천
a클레스에서 intent해서 b클래스로 갔을때

 

b클레스에서 a클레스의 listview 내용을 remove 시키는 방법이 없을까요?
호랑이말코 (660 포인트) 님이 2013년 3월 4일 질문

3개의 답변

0 추천
질문이 짧아, 안드로이드를 얼마나 아시고
​코드가 어떻게 구현되어 있는지 알수가 없어 말씀드릴수 있는게 별로 없네요;;

A엑티비티가 B엑티비티를 호출하게 되면 onPause되어 일시정지 상태가 됩니다.
http://developer.android.com/images/activity_lifecycle.png

서비스를 사용사여 AIDL 통신을 하거나

파일버퍼를 사용하여 계속해서 체크를 시키거나 (원시적 방법)

A에서 돌려야 할 스레드를 B에 바인딩해서 넘겨주거나 하는 방법이 있습니다
Noizbuster (11,970 포인트) 님이 2013년 3월 4일 답변
아.....인텐트로 얘기해서 초보적이게 답변이 ㅠ_ㅠ

BaseAdapter 써서 a엑티비티의 그 해당 listview에 있는 버튼이 눌려지면

a엑티비티의 다른 listview 의 내용이 remove 되는걸 묻는거였습니다

ㅠ_ㅠ
리스트뷰가 사용하는 어댑터에 달려있는 arraylist를 서로 물려서 사용해보세요.
0 추천
가장 간단한방법은 onactivityresult 로 지울 목록을 받아서 처리하는거죠.
Darklake (720 포인트) 님이 2013년 3월 4일 답변
0 추천

BaseAdapter 써서 a엑티비티의 그 해당 listview에 있는 버튼이 눌려지면
a엑티비티의 다른 listview 의 내용이 remove 되는걸 묻는거였습니다

 

위 상황에 대한 답변입니다.

2개의 리스트뷰, 2개의 어뎁터객체, 2개의 ArrayList객체를 쓴다고 가정하고

리스트뷰A - 어뎁터A - ArrayListA

리스트뷰B - 어뎁터B - ArrayListB 가 각각 연결되어있을 때

 

리스트뷰 A의 아이템클릭 이벤트에서 ArrayListB의 내용을 수정한 후에 

어뎁터B.notifyDataSetChanged(); 를 수행하면 됩니다.

이라슈 (8,770 포인트) 님이 2013년 3월 4일 답변
...