안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요. 액티비티간 데이터 주고 받기 강좌를 보고 따라해보았는데요.
궁금한점이 강좌에서랑 약간 다르게
호출당한 액티비티에서 넘긴 데이터를
호출한 액티비티가 아닌 제가 임의로 만든 클래스로 받을 수 있을까요?
제가 커스텀어댑터를 사용해서 메모리스트를 만드는중인데 방법을 모르겠습니다..
OnActivityResult 메소드에서
if(resultCode==RESULT_OK) //액티비티가 정상적으로 종료되었을 경우
{
if(requestCode==1) //호출한 액티비티 경우에만 처리합니다
{
??.setText(data.getStringExtra("String name"));
??부분을 어떻게 설정해야 제가 만든 클래스로 데이터를 넘겨줄 수 있을지... 이외부분은 코드설명으로 이해할 수 있겠는데
저부분에 대해 응용을 할려니 막히네요 흑흑..
넘긴 데이터를 ArrayList<제가만든클래스> items; 에 저장하고, 그걸 커스텀어댑터가 가져가서 뿌려주면 되겠다 생각했거든요.
기초가 부족해서 강좌도 읽어보고 실습예제 따라하면서 했는데 너무너무 헷갈리고 막히네요..ㅠㅠ
조언좀 부탁드립니다. 행복한 하루 되실꺼에요.
2012.04.25 12:54:15
답변감사합니다. 하지만 제가 뭘 잘못했는지 에러는 안나는데
데이터를 추가해도 리스트에 반영이 안되네요.
if(resultCode==RESULT_OK){
if(requestCode==1){ items = new ArrayList<MemoData>();
items.add(new MemoData(data.getStringExtra("title"),data.getStringExtra("date"),data.getStringExtra("time"),data.getStringExtra("content"))); 이렇게 짜봤습니다.




해당 ArrayList<임의클래스> 를
if(requestCode==1) //호출한 액티비티 경우에만 처리합니다
{
ArrayList<임의클래스> items = new ArrayList<임의클래스>(); 하셔서 작업 하시면 될거 같은데요;
이런식이라면 보통 임의 클래스는 자바빈 객체나 dataSet이겠지요?
질문의 의도가 이게 아니라면 해당 액티비티에 바로 값을 넘기는건
Intent intent = new Intent(Context, class);
하셔서
startActivity(intent);하시기 전에
intent.putExtra(키,밸류)등으로 넘기시면 됩니다~